Установите NavigationBarController в rootViewController - PullRequest
0 голосов
/ 12 сентября 2018

Я пытаюсь использовать шаблон MVC, где мой NavigationController создает и контролирует все мои представления и переключает соответствующие представления.Чтобы добиться этого, я просто создаю свой экземпляр navigationController и устанавливаю его как rootViewController в делегате приложения.

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    self.window = UIWindow(frame: UIScreen.main.bounds)
    let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
    let navigationController: NavigationController = (mainStoryboard.instantiateViewController(withIdentifier: "navigationController") as! NavigationController)

    self.window?.rootViewController = navigationController
    self.window?.makeKeyAndVisible()
    return true
}

В функции viewDidLoad() моего класса NavigationController я просто создаю свой первый "реальный" вид с помощью myTableViewController.и нажмите его вперед.

override func viewDidLoad() {
    super.viewDidLoad()
    let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
    self.myTableViewController = mainStoryboard.instantiateViewController(withIdentifier: "myTableViewController") as? MyTableViewController
    self.pushViewController(myTableViewController!, animated: true)
}

Хотя все работает нормально, я получаю предупреждение консоли:

Не удалось создать экземпляр контроллера представления по умолчанию для UIMainStoryboardFile 'Main' - возможно,назначенная точка входа не установлена?

Я думаю, что это предупреждение возникает, потому что navigationController не является "настоящим" ViewController ... Но как я могу исправить это без создания экземпляра MyTableView () в делегате приложения?

1 Ответ

0 голосов
/ 12 сентября 2018

enter image description here

Пожалуйста, проверьте раскадровку, установленную в качестве контроллера начального вида.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...