ViewController не отображается на экране после pushViewController, но присутствует в UI-Debugger - PullRequest
0 голосов
/ 30 сентября 2019

После получения AppLink я нажимаю VC на navigationController . ViewController не появляется на экране, и приложение заморожено (не разбилось). Но если я открываю UI-Debugger, там есть VC.

Я попытался выполнить ссылку на Main , это делает проблему редкой, но иногда все еще воспроизводимой.

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

Есть идеи?

1 Ответ

0 голосов
/ 30 сентября 2019

Это может быть неактуально для многих, но может помочь кому-то.

В моем случае ViewController реализует UIGestureRecognizerDelegate, и я возвращал true из

gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool

, даже если был1 Просмотр контроллера на NavigationStack. Это вызвало зависание приложения (фактически в следующий раз, когда я попытался нажать pushViewController с анимацией, пользовательский интерфейс застрял в анимации навсегда).

(В дополнение к другим моим проверкам) Добавление следующей проверки в конце метода решило проблему.

return navigationController.viewControllers.count > 1
...