ViewController在pushViewController之后没有显示在屏幕上,但它存在于UI调试器中

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

获得AppLink后,我在navigationController上推送了VC。 ViewController不会出现在屏幕上,并且应用程序已冻结(未崩溃)。但是,如果我打开UI-Debugger,就可以使用VC。

我尝试在Main上执行链接,这使问题很少见,但有时仍可重现。

DispatchQueue.main.async {
    navController?.pluginNavigationController.pushViewController(viewController, animated: true)
}

任何想法?

ios swift uinavigationcontroller pushviewcontroller
1个回答
0
投票

对许多人来说可能无关紧要,但可能会对某人有所帮助。

在我的情况下,ViewController实现了UIGestureRecognizerDelegate,而我从中返回了true

gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool

即使NavigationStack上只有1个ViewController。这导致应用程序冻结。

((除了我的其他检查)在方法末尾添加以下检查已解决了该问题。

return navigationController.viewControllers.count > 1
© www.soinside.com 2019 - 2024. All rights reserved.