Как добавить подпредставление в UINavigation Controller, не теряя панель навигации? - PullRequest
0 голосов
/ 24 марта 2012

У меня есть SplitViewController, у которого есть два UITableViewController - один главный / корневой, одна деталь. Все работает плавно.

У меня есть UIView, который отображается на подробном контроллере до того, как пользователь выберет элемент в корневом контроллере представления. Это настроено так:

[self.navigationController.view addSubview:makeSentenceHelperView];
[self.navigationController.view bringSubviewToFront:makeSentenceHelperView];

DetailViewController настроен так:

UINavigationController *detailNav = [[[UINavigationController alloc] initWithRootViewController:detailViewController] autorelease];

Где detailViewController - это подкласс UITableView.

Проблема заключается в том, что этот подпредставитель скрывает кнопки и панель навигации от панели навигации контроллера подробного вида, что является проблемой, когда вы запускаете SVC в портретном режиме (нет способа выбрать корневой элемент с корневым всплывающим окном).

enter image description here

Как представить представление внутри контроллера навигации, чтобы панель навигации и кнопки появлялись в подробном представлении?

Ответы [ 2 ]

0 голосов
/ 24 марта 2012

Чтобы исправить это, я добавил UINavigationController в свой вспомогательный UIView и добавил UIButtonBarItem, чтобы вызвать поповер для выбора нового элемента в главном представлении.Это кажется очень простым в ретроспективе.Единственным хитрым моментом будет скрытие UIButtonBarItem в пейзаже.

0 голосов
/ 24 марта 2012

Не делайте detailViewController подклассом UIView, вместо этого используйте UIViewController.Таким образом, ваш массив splitView будет содержать экземпляр UINavigationController (rootVC) и другой экземпляр UIViewController (detailVC).

Добавьте панель инструментов в верхней части detailViewController и в альбомном режиме левая сторона будет покрыта вашим UITableView rootVC, и вы сможете увидеть панель инструментов, где вы можете добавить какую-либо кнопку с правой стороны(вероятно, будет служить панелью навигации .. :).Остальные вещи могут быть обработаны UISplitViewControllerDelegate.

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