2012-01-11 4 views
1

Извините за смутное название!UINavigationController, содержащий UITableView, затем UITabBarController с большим количеством UITableView's

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

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

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

James.

ответ

1

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

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

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

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

+0

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

 Смежные вопросы

  • Нет связанных вопросов^_^