Контроллер TabBar и Navigation Controller - кто менеджер? - PullRequest
1 голос
/ 25 августа 2009

Я хотел бы иметь представление (структура иерархии) под контроллером навигации (верхняя синяя панель навигации), у которого есть панель вкладок (черная в нижней части) для отображения дополнительных представлений (каждое для вкладки) на том же уровне ,

Если вы выбираете один из этих видов (черная панель вкладок), у вас всегда должна быть видимая вкладка, чтобы перейти к другому виду того же уровня. Если вы хотите вернуться на верхний иерархический уровень, вам нужно выбрать кнопку «Назад» в верхней панели (синяя), и «панель вкладок» должна исчезнуть.

Почему Apple предлагает (как мне кажется) этого избежать?

Я цитирую со страницы «Руководство по программированию контроллера View для iPhone OS» на странице 39, где написано:

Очень часто объединяют панель вкладок и контроллеры навигации, как показано на рисунке 4. Чтобы сделать это, вы просто добавляете контроллеры навигации в контроллер панели вкладок (однако, вы никогда не должны добавлять контроллер панели вкладок в навигационный контроллер ).

Вместо этого я бы добавил «Панель вкладок» под «Панель навигации» (менеджер)

Думаю ли я неправильно?

Спасибо за вашу помощь!

Dario

Ответы [ 3 ]

3 голосов
/ 25 августа 2009

Они имеют в виду, что панель вкладок никогда не должна быть дочерней по отношению к навигационному представлению. Панель вкладок действительно предназначена для определения различных «режимов» вашего приложения , тогда как навигационные контроллеры должны отображать иерархические данные.

Если вам нужен какой-то режим в контроллере навигации, я думаю, что обычно используется панель инструментов. Например, панель инструментов внизу в приложении Почта.

UIToolbar Docs

2 голосов
/ 25 августа 2009

Следующее верно в соответствии с тем, что мне удалось выкопать на нескольких форумах и в документации:

Tab Bar Controller > Navigation Controller > View

Вы многое делаете только с помощью построителя интерфейса, а затем привязываете TabBarItems, NavigationItems и Controllers к выводам в вашем коде.

Некоторые образцы документов:
Создание приложения для iPhone, объединяющего панель вкладок, навигацию и вкладку (YouTube)
iphonedevsdk (Форум)
Добавление NavigationController в TabBarController (учебник по форуму)

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

0 голосов
/ 25 августа 2009

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

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