Как узнать, загружено ли представление из раздела «Больше» в навигационном контроллере или из главной вкладки? - PullRequest
0 голосов
/ 17 октября 2018

У меня есть UITabBarController со многими контроллерами UIViewController, что приводит к появлению "More" TabBarItem.

В одном из этих представлений есть некоторые функции редактирования, которые я хотел бы поместить в UINavigationBar, и я могу заменить правую и левую кнопкупредметы, нет проблем.Однако при перемещении контроллера представления, когда контроллер навигации больше не отображается, возникает проблема.Я полагаю, что смогу решить эту проблему, если узнаю, откуда загружено представление.

Вот моя задача. Мне нужно несколько указаний:

Как лучше всего проверить, есливыбранный вид не отображается в верхней панели навигации?То есть на вершине нет «<Больше».Таким образом, я могу отобразить свою собственную кнопку редактирования. </p>

Ответы [ 2 ]

0 голосов
/ 17 октября 2018

Любой контроллер представления может запросить его tabBarController.Оттуда он может получить контроллер панели вкладок moreNavigationController.Так что теперь он может спросить, является ли его parent moreNavigationController.

0 голосов
/ 17 октября 2018

Должен быть в состоянии проверить, есть ли левая кнопка, используя

navigationItem.leftBarButtonItem == nil

или

navigationController?.navigationItem.leftBarButtonItem == nil

в зависимости отваша иерархия.

...