gpt4 book ai didi

iPhone UIView 没有立即更新

转载 作者:行者123 更新时间:2023-12-03 21:11:15 26 4
gpt4 key购买 nike

我的应用程序有一个按钮,单击后将被禁用,显示事件指示器并执行后台任务。此任务完成后,回调会通过启用按钮并删除事件指示器来更新界面。我遇到的问题是任务正在完成,回调函数已执行,但事件监视器仍保留在屏幕上一段时间,该按钮看起来像是已禁用,但可以再次单击它。谁能告诉我哪里出错了?

非常感谢!

最佳答案

回调方法是否是在单独的线程中执行的?我这么问是因为任何对 View 有影响的调用都应该在主线程上执行。

通过执行以下操作可以解决该问题:

  1. 创建一个方法来处理与 UI 相关的代码并在回调方法中调用
  2. UI相关的代码必须在主线程上执行

它可能看起来有点像这样:

//gets called asynchronously when your operation has completed
-(void)myCallbackHandler {
[self performSelectorOnMainThread:@selector(updateUI) withObject:nil
waitUntilDone:NO];
}

-(void)updateUI {
[myActivityIndicatorView stopAnimating];
[myButton setEnabled:YES];
}

关于iPhone UIView 没有立即更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3193865/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com