iOS 13:违反线程:预期为主线程

问题描述 投票:3回答:1

[仅当iOS 13用户尝试隐藏视图控制器的导航栏时,该应用程序已崩溃。

  • 我在Fabric的Crashlytics上崩溃,标题如下,

致命异常:NSInternalInconsistencyException

违反线程:预期为主线程

  • 应用程序在此viewWillAppear方法的行崩溃,
    self.navigationController?.isNavigationBarHidden = true
  • 要隐藏UIViewController的viewWillAppear方法上的导航栏,我正在使用下面的代码,
    override func viewWillAppear(_ animated: Bool) {
        self.navigationController?.isNavigationBarHidden = true
        super.viewWillAppear(animated)
    }
  • 为了显示UIViewController的viewWillDisappear方法上的导航栏,我正在使用下面的代码,
    override func viewWillDisappear(_ animated: Bool) {
        self.navigationController?.isNavigationBarHidden = false
        super.viewWillDisappear(animated)
    }
swift multithreading uinavigationbar ios13
1个回答
0
投票

执行以下操作

  DispatchQueue.main.async {
    self.navigationController?.isNavigationBarHidden = false
  }
© www.soinside.com 2019 - 2024. All rights reserved.