“由于调用present(viewcontroller ......)而导致Web线程上的多个锁定不允许”崩溃

时间:2017-10-08 16:51:13

标签: ios swift xcode ios11 presentviewcontroller

我得到的崩溃是:

  

不允许在网络线程上进行多次锁定!请提交一个错误。现在崩溃......

当我实例化名为setupViewController的自定义视图控制器并调用:

时,会发生崩溃
present(setupViewController, animated: true, completion: nil)

我已经调试了很多错误,这就是我所知道的:

  • 它只发生在iOS 11上,iOS 10.3.3很好

  • setupViewController内部没有任何内容导致崩溃,只是它的呈现。如果我从控制器中取出所有代码和所有视图,它仍然会崩溃。 (另外:我正在运行iPhone 6s模拟器)

根据我的理解,这次崩溃正在发生,因为我试图从辅助线程更新UI组件。我试过从主线程调用函数,如:

DispatchQueue.main.async {
    let setupViewController = self.storyboard?.instantiateViewController(withIdentifier: "QuickSetup") as! QuickSetupViewController
    self.present(setupViewController, animated: true, completion: nil)
}

但无济于事。

感谢任何帮助。谢谢!

0 个答案:

没有答案