例如,当我们使用以下代码在 UIButton 或 View 上添加目标时,
cancelButton.addTarget(self, action: #selector(MyViewController.onCancelPressed), for: UIControlEvents.touchUpInside)
onCancelPressed
代码在哪个线程中运行?我假设它们在主线程上运行,但是否始终确保它们永远不会从其他线程运行?另一方面,我是否应该将 ui 内容放在 onCancelPressed
的主 block 中。
最佳答案
对选择器的调用在主线程上运行,因为 UIButton 是在主线程上创建的。函数调用也源自主线程,即使您从辅助线程添加目标选择器也是如此。 因此,无需在选择器函数中添加主 block 。
关于iOS - 在哪个线程 ios 选择器运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41583374/