Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как анимировать представление detailViewController без UINavigationController?

Автор вопроса: seeker12Ответов: 1

В приложении для iPad у меня есть tableView как подпредставление viewController верхнего уровня - назовем его topVC. TableView управляется выделенным viewController, tblVC, который является свойством topVC. Мне нужно, чтобы tableView поддерживал навигацию в стиле iPhone.

Настройка свойства UINavigationController в файле topVC.xib в IB с tblVC, подключенным в качестве rootViewController, не сработала, поэтому я настроил UINavigationController программно в topVC viewWillAppear:, инициализировав его с помощью tblVC в качестве rootViewController и установив его представление как подвид topVC. Это работало по желанию, но при повороте в альбомную ориентацию панель навигации NavigationController всплывала в верхней части представления thetopVC.

Можно ли вручную выполнить навигацию в DetailView с базовой анимацией слайдов в стиле iPhone без UINavigationController, используя UINavigationBar и UINavigationItem? Я думал о том, чтобы вывести detailView из рамки tableView и вставить его вручную, но это только заставило его появиться поверх другого подвида и скользнуть в tableView. Как это сделать?

iosuinavigationcontrolleruitableview

Ответы

Ответ 1 · TomSwift

Вы можете рассмотреть возможность использования всплывающего контроллера представления и разместить внутри него стандартный UINavigationController с вашим UITableViewController внутри него.

В противном случае вам придется свернуть свой собственный навигационный контроллер. Я обнаружил, что это настоящая PITA, чтобы изменить/влиять на некоторые врожденные поведения, которые вы видите, такие как изменение положения при вращении.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы