UINavigationController, содержащий UITableView, затем UITabBarController с более UITableView - PullRequest
1 голос
/ 12 января 2012

Извините за смутный заголовок!

Я пытаюсь получить следующие функциональные возможности: пользователю сначала предоставляется UINavigationController, содержащий UITableView.Когда пользователь нажимает на ячейку в табличном представлении, я хочу выдвинуть новое представление, которое содержит UITabBarController (, который останется видимым независимо от видимого в настоящее время UIViewController ) и снова UITableView, что люди могут сновавыберите ячейку и затем снова нажмите на UINavigationController.

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

У меня естьчасами пытался найти ответ на этот вопрос, а я просто не могу никуда!Надеюсь, я не был слишком смутным или запутанным в своем объяснении.

Джеймс.

1 Ответ

1 голос
/ 12 января 2012

Если ваш желаемый UX не совсем понятен, представьте, что будут чувствовать ваши пользователи!Я бы пересмотрел предполагаемый дизайн.

Из Руководства по программированию View Controller:

Приложение, которое использует контроллер панели вкладок, также может использовать контроллеры навигации в одной или нескольких вкладках.При объединении этих двух типов контроллера представления в одном пользовательском интерфейсе контроллер панели вкладок всегда действует как оболочка для контроллеров навигации.Вы никогда не хотите помещать контроллер панели вкладок в стек навигации контроллера навигации.Это создает необычную ситуацию, когда панель вкладок появляется только тогда, когда конкретный контроллер представления находится в верхней части стека навигации.Панели вкладок разработаны так, чтобы быть постоянными, и поэтому этот переходный подход может сбивать с толку пользователей.набор кода для управления навигацией с использованием методов UITabBarControllerDelegate и UINavigationControllerDelegate и отслеживания любого состояния, в котором вам необходимо знать, к которому вы хотите перейти, на основе действий пользователя.Скорее всего, у вас получится что-то сложное для программирования, обслуживания и, что еще хуже, использования.

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