当我在后台线程上显示AletView时,为什么UI会挂起?

时间:2015-01-23 13:39:09

标签: ios iphone ipad uialertview

我在一个帖子中显示了UIAlertView,但用户界面挂起,然后在2-3秒后显示UIAlertView

我可以使用dispatch_async(dispatch_get_global_queue...performSelectorOnMainThread来解决此问题。

我想知道为什么当我们在后台线程上呈现UIAlertView时,UI会挂起。

1 个答案:

答案 0 :(得分:2)

在iOS上,必须在主线程上执行所有UI操作,您无法在后台线程上进行UI操作(例如显示UIAlertView)。这也解释了performSelectorOnMainThread:解决问题的原因。

这是关于该主题的一个不错的blog post和一个link to the docs