Вложенные UINavigationControllers и TabBarController

У меня возникают некоторые проблемы с дизайном пользовательского интерфейса.

Альтернатива 1:

  • UINavigationController
    • TabBarController
      • MapViewController
      • UINavigationContoller
        • UITableViewController
          • DetailViewController

Альтернатива 2:

  • UINavigationController
    • TabBarController
      • MapViewController
      • UITableViewController
        • DetailViewController

В альтернативе 1 в navigationitem элементе DetailViewController backButton и title не отображаются, но у меня есть нижняя tabbar .

В альтернативе 2 в navigationitem DetailViewController обратная backButton и title видны, но я пропускаю нижнюю tabbar .

Есть ли способ иметь обе функции альтернативных 1 и 2?

Мне нужен самый верхний контроллер навигации, потому что в TabBarViewController у меня есть LeftBarButtonItem, показывающий боковое меню (SWRevealViewController).

РЕДАКТИРОВАТЬ

Код в TableViewController

 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { poiDetail = [poiManager.listOfPois objectAtIndex:indexPath.row]; // does not work with regions-sections [self performSegueWithIdentifier:@"poiDetail" sender:self]; } 

где «poiDetail» segue является нажатием, например «Show» segue.

2 Solutions collect form web for “Вложенные UINavigationControllers и TabBarController”

Да, я реализовал такой же сценарий и столкнулся с одной и той же проблемой. К счастью, я могу решить это в своем приложении,

Я предлагаю Альтернативу 1

Вы можете установить Initial UINavigationController в AppDelegate и поддерживать поток приложений с одним контроллером навигации до вложенного UINavigationController. И установите контроллер TabBar как RootViewController

В RootViewController вложенного навигационного контроллера, пожалуйста, скройте навигационную панель навигации NavigationDontroller AppDelegate. Таким образом, вы можете решить проблему Альтернативы 1, с которой вы сталкиваетесь.

Я сослался на эту библиотеку: https://github.com/juliorimo/CustomTabBar-iOS (Примечание: эта библиотека – это всего лишь один UINavigationController и TabbarController, а также дополнительный поток Nested UINavigationController, который вы должны поддерживать)

Эй, я предлагаю Альтернативу 3:

  • UINavigationController
    • Контроллер панели вкладок
      • Контроллер Nav
        • Контроллер отображения карты
      • Контроллер Nav
        • Контроллер таблицы
          • Контроллер детального просмотра

Вы, по сути, хотите, чтобы два контроллера просмотра, управляемые контроллером панели управления, были завернуты в контроллеры Nav

  • MKUserTrackingBarButtonItem цвет оттенка IOS7 не работает, но работает на IOS 6
  • Заголовок навигации не отображается в режиме просмотра с помощью контроллера представления таблиц, но работает «назад»
  • Навигация UIBarButtonItem Внешний вид на устройстве отличается
  • Как вручную установить «Назад» в приложениях iOS
  • Панель навигации Навигация Элементы навигации, в результате чего верхняя область кнопок на толкаемом контроллере просмотра не может быть недоступна
  • Мой заголовок UINavigationitem расширяется в ios 6
  • Кнопка «Назад» не сделана на панели навигации.
  • Цвет фона UINavigationItem
  • В чем разница между UINavigationController и UINavigationItem
  • Элемент панели управления, не отображаемый в навигацииBar
  • Настроить панель навигации, добавив две метки вместо названия в Swift
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.