У меня проблемы с использованием pushViewController в Swift5, я искал в StackOverflow ответы и не смог найти ни одного работающего.
Все, что я пытаюсь сделать, - это перейти к другому контроллеру с помощью pushViewController.
Использование self.present работает для навигации, но pushViewController не работает по неизвестным мне причинам.
ТОЛЬКО с использованием представленных ниже работ:
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let viewController =
storyBoard.instantiateViewController(withIdentifier: "ViewController") as! ViewController
self.present(viewController, animated: true, completion: nil)
Но использование pushViewController никогда не работает:
Я пробовал это: я не работаю
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "ViewController") as! ViewController
navigationController?.pushViewController(vc, animated: true)
Я пробовал это: я тоже не работаю
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewController = storyboard.instantiateViewController(withIdentifier: "ViewController" )
var navigationController = UIApplication.shared.keyWindow?.rootViewController as! UINavigationController
navigationController.pushViewController(viewController, animated: true)
Я пробовал это, Это такжене работает
let viewController = storyboard.instantiateViewController(withIdentifier: "ViewController" )
let vc = self.windowRootViewController() as! ViewController
let nvc = vc.parent as! UINavigationController
nvc.pushViewController(viewController, animated: true)
Пожалуйста, кто-нибудь может правильно подсказать мне, что я делаю неправильно, или контрольный список или конфигурацию, которые мне нужно сделать, чтобы это работало?
Спасибо всем!