Segue from Tab controller ДАЛЕЕ
У меня есть контроллер вкладок, который имеет 7 вкладок.
Я нахожусь на странице под названием Устройство. Кнопка "Назад" показывает "<Устройства"
Перейдите к любой из 4-х видимых вкладок, и кнопка "Назад" пункта назначения говорит "<Устройство", чего я и ожидал.
Однако, если я нажму на кнопку "БОЛЬШЕ" на вкладке и выберите там вкладку под названием "Управление", если она перейдет в другое представление, кнопка "Назад" по-прежнему будет "<Устройства", а в заголовке страницы по-прежнему будет "Устройство".
Если я переупорядочиваю вкладки так, чтобы "Управление" не находилось в БОЛЬШЕ (это одна из 4 видимых), если я нажимаю на вкладку напрямую, она переходит к виду, заголовок говорит "Управление" и кнопка "Назад" отображает "<устройство", как я ожидал.
Почему переход из меню MORE контроллера вкладок ведет себя иначе, чем переход от видимой вкладки?
1 ответ
Как и в случае с руководящими принципами разработки Apple, контроллер панели вкладок следует использовать в качестве верхней части навигации в вашем приложении.
Если есть какая-то причина, почему бы не использовать его. Если вы используете контроллер навигации, вы должны использовать отдельный контроллер навигации для каждого потока. Вы можете встроить свои контроллеры в UINavigationController, выбрав
Редактор -> Встроить -> UINavigationController
Если ваша настройка TabBarController -> ChildViewController [Each of these embedded in UINavigationController]
должен вести себя правильно
Но что касается вашего описания настройки, скорее всего,
UINavigationController -> UIViewController (title "Devices") -> UITabBarController -> ChildViewController
MORE
вкладка конкретная. Ссылаться на tabbarController.moreNavigationController
Причина, по которой вы не видите свой заголовок на вкладке "Управление", заключается в том, что иерархия представления отличается. Как вы не упомянули, как вы устанавливаете свой заголовок для навигационного элемента. Есть две возможности.
Вызвать приведенный ниже фрагмент в вашем методе Manage VC viewDidAppear
self.tabBarController?.navigationItem.title
Вы также можете обратиться к аналогичным вопросам о контроллере панели вкладок. Это в основном об использовании (ничего общего с БОЛЬШЕ) Stackru - контроллер панели вкладок
Чтобы ответить на ваш вопрос - Поведение отличается из-за различий в иерархии представлений. Дочерний VC на вкладке More встроен в UINavigationController соответственно свойству UITabBarControllers. moreNavigationViewController
,