Раскадровка iOS: модальный и push-переход на одном и том же контроллере представления

У меня есть последовательность ViewControllers (B, C, D,...), дочерние элементы UINavigationController (A0), к которым вы обращаетесь последовательно (A0 -> B -> C -> D,...).

Я также хотел бы разрешить UITableViewController A1 получать доступ к каждому ViewController по отдельности, не просматривая всю последовательность (так что A1 -> B или A1 -> C, A1 -> D).

В раскадровке я попытался связать B следующим образом:

  • от A0, используя push segue
  • из A1, используя модальный переход

Я начал добавлять переход A0 -> B в раскадровку, что автоматически добавило панель навигации, которую я настроил с заголовком и кнопками.

Затем я добавил модальный переход A1 -> B, и панель навигации исчезла из раскадровки.

Теперь, если я удалю этот второй переход, панель навигации снова появится с настройкой.

Что-то не так с тем, чего я пытаюсь достичь, или это просто ограничение раскадровки?

Спасибо


person Arnaud    schedule 29.05.2013    source источник


Ответы (1)


Панель навигации по умолчанию поставляется с контроллером навигации, когда вы нажимаете контроллер представления на контроллер навигации. Когда вы подключаетесь

  1. A0-B, используя push segue, панель навигации появится автоматически, так как она перенесена на навигационный контроллер.
  2. A1-B, используя модальный переход, панель навигации исчезает, так как она не находится под контроллером навигации.

Итак, что вы можете сделать, это добавить навигационный контроллер перед A1 и нажать B. Или программно добавить панель навигации после ее представления из A1. Если вы нажмете от A0 бар автоматически придет

person Anil Varghese    schedule 29.05.2013
comment
На самом деле, это не совсем работает, но я приму это, так как это привело меня на правильный путь :). Добавление A1 после A0 не сработало, но на самом деле речь идет о том, какой переход был выбран последним. Если я нажму на переход A0, панель навигации снова появится. Если я затем нажму на A1, он исчезнет. В конце концов, довольно просто. - person Arnaud; 29.05.2013