为什么我在使用UIWebView时收到"此应用程序正在从后台线程修改自动布局引擎"?

Pan*_*ngu 7 uiwebview ios swift

我有一个问题使用UIWebView.

UIWebView扩展到全屏模式时,我一直收到以下信息:

此应用程序正在从后台线程修改autolayout引擎,这可能导致引擎损坏和奇怪的崩溃.这将在将来的版本中导致异常.

这是我的简单代码,也是我唯一的代码:

@IBOutlet var player: UIWebView!

override func viewDidLoad()
{
    super.viewDidLoad()

    let url = "http://qthttp.apple.com.edgesuite.net/1010qwoeiuryfg/sl.m3u8"

    let frame: Int = 10

    let html = "<html><body><iframe src=\"\(url)\" width=395 height=290 frameborder=\(frame)></iframe></body></html>"

    player.loadHTMLString(html as String, baseURL: nil)
}
Run Code Online (Sandbox Code Playgroud)

我尝试了以下问题的解决方案,它没有做任何事情:

  1. 获取"此应用程序正在修改自动布局引擎"错误?
  2. 此应用程序正在从后台线程修改autolayout引擎,这可能导致引擎损坏和奇怪的崩溃
  3. 此应用程序正在从后台线程修改autolayout引擎 - ios9
  4. 从C++修改后台线程错误中的autolayout引擎
  5. 此应用程序正在从后台线程swift2.0修改autolayout引擎
  6. "此应用程序正在从后台线程修改autolayout引擎,这可能导致引擎损坏和奇怪的崩溃......"
  7. Xcode7:此应用程序正在从后台线程修改autolayout引擎,这可能导致引擎损坏和奇怪的崩溃
  8. dispatch_async(dispatch_get_main_queue(), {
        let html = "<html><body><iframe src=\"\(url)\" width=395 height=290 frameborder=\(frame)></iframe></body></html>"
        self.player.loadHTMLString(html as String, baseURL: nil)
    })
    
    Run Code Online (Sandbox Code Playgroud)

我试过另一个解决方案

  1. iOS9 - 此应用程序正在从后台线程修改autolayout引擎 - 在哪里?

将PSPDFUIKitMainThreadGuard添加到项目中无法解决此问题.

正如您所看到的,我的代码非常简单,与我发现的其他问题不同,所有这些解决方案都指向在主线程中执行UI更改,我添加了代码以尝试执行,但我仍然收到警告.

还有很多我发现的与我相似的问题,但它们都指向同样的解决方案,这对我不起作用,所以我没有费心去列出它们.

有没有人对此有任何见解?你可以自己尝试这个简单的代码,你会看到同样的问题.

谢谢

归档时间:

查看次数:

755 次

最近记录:

9 年,3 月 前