ViewControllers Массив индекса TabBarController возвращает NSRangeException - PullRequest
0 голосов
/ 09 декабря 2018

У меня есть 5 элементов на tabBarController, и я управляю только на didSelect tabBar (с индексом 1 и индексом 3).Когда я нажимаю на элемент с индексом 3, ViewController отображается успешно, но когда я нажимаю на элемент с индексом 1, я получаю эту ошибку:
Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 9223372036854775807 beyond bounds [0 .. 4]'

Это код на вкладке didSelect tabBar:

if item.tag == 1 {

         self.view.backgroundColor = .white
        let chatListController = ChatListViewController.viewControllerFromStoryborad(storyName: "Chat", viewName: "ChatList")

        let storyboard = UIStoryboard(name: "Main", bundle: nil)

        let navigation = storyboard.instantiateViewController(withIdentifier: "Chat_Navigation") as! UINavigationController

        navigation.pushViewController(chatListController, animated: true)
            self.viewControllers?[1] = navigation
            self.selectedIndex = 1
    }


    if item.tag == 3 {
        self.view.backgroundColor = .white
            let manageController = ManagingNormalViewController.viewControllerFromStoryborad(storyName: "Order", viewName: "Manage_Normal")

            let storyboard = UIStoryboard(name: "Main", bundle: nil)

            let navigation = storyboard.instantiateViewController(withIdentifier: "OrderNavigation") as! UINavigationController

            navigation.pushViewController(manageController, animated: true)
            self.viewControllers?[3] = navigation
            self.selectedIndex = 3

        }

Почему я получаю эту ошибку ?!код тот же, а индекс массива правильный.
Это изображение моего TabBarController: enter image description here

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