Как смоделировать навигационный контроллер / UITableView DrillDown в меньшей области iPad? - PullRequest
3 голосов
/ 30 июня 2011

У меня есть меню с двумя глубинами (UITableView), которое является подпредставлением в главном на iPad. Итак, это не контроллер, это обычный UITableView.

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

Это не разделенное представление, и для этого интерфейса разделенное представление не является ответом. Подумайте, как будто стол - это ящик внутри большего, а остальные - вокруг.

1 Ответ

2 голосов
/ 05 июля 2012

Я смог достичь этого, создав главный контроллер вида, который содержал контроллер навигации и любой из представлений подслоя.Я следовал тому же общему принципу, что и в образце Apple DrillDownSave , за исключением того, что пропустил объект Window и объект AppDelegate в xib-файле.Вместо этого я использовал UIView, так как я использовал UIViewController для управления всем.

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

Здесь много кода, но основной макет выглядит так:

  • Some View Controller
    • Master View Controller для элемента навигации (устанавливается как свойство «некоторого» контроллера представления и создается / позиционируется / добавляется как подпредставление в его viewDidLoad)
      • UINavigationController (в xib, как пример Apple)
        • Контроллер первого уровня с UITable
      • Контроллер второго уровня с UITable
      • Контроллер представления третьего уровня с UITable
    • Представление местозаполнителя в xib для упрощения выравнивания мастера элементов навигации

* примечание- Я не использовал вид листа, как пример Apple, потому что он мне не нужен для моих целей

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

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