UIView文档说“对应用程序的用户界面进行操作必须在主线程上进行”。尽管如此,在我的测试中到目前为止,我发现使用后台线程中的setFrame重新定位视图确实有效。
任何人都可以确认setFrame是否是线程安全的吗?
答案 0 :(得分:0)
所有UI更新代码(包括setFrame)必须在主线程上完成。我想你已经知道了答案:)
它可能在后台线程中工作,但并不意味着它是安全。 为了更直接地回答这个问题,Apple几乎都说UIView代码不是线程安全的。
如果您需要从其他线程更新UI,请使用Grand Central Dispatch在主线程上调用它。