Я пытаюсь найти решение, которое я видел реализованным в некоторых приложениях для iPad, где то, что кажется UISplitViewController
, не отображает основной вид, пристыкованный влево в горизонтальной ориентации.Вместо этого поведение точно такое же в альбомной ориентации, как и в портретной, с UIBarButtonItem
в левой части от UIToolbar
в верхней части экрана, в результате чего появляется UIPopoverController
с видом контроллера основного вида.В нем представлены некоторые пункты меню, которые при выборе, по-видимому, запускают новые классы UIViewController
, полученные в подробном представлении.
Приложение, над которым я работаю, должно использовать как можно больше возможностей экрана.и наличие основного вида с опциями меню, пристыкованными к левой стороне, не добавляет особой ценности;на самом деле это мешает приложению.
Так что на самом деле я пытаюсь сделать это в два раза:
- Подавить закрепленный основной вид в альбомной ориентации
- Естьвыбор строки (опция меню) в главном представлении загружает новый класс
UIViewController
, полученный в подробном представлении.
Я видел примеры каждого из них, соответственно:
- http://vimeo.com/13054813 (скрытие корневого представления UISplitViewController)
- http://bit.ly/aypcr0 (пример кода MultipleDetailViews от Apple)
Тем не менее, я не могу заставить их работать вместе.
Причиной использования этого подхода является то, что у меня есть несколько классов UIViewController
, которые я хочу отображать при выборе соответствующей опции меню.Я мог бы просто создать их экземпляр и добавить их представления в существующий подробный вид, и они будут отображаться нормально.Проблема в том, что ни один из методов жизненного цикла UIViewController никогда не вызывается, кроме viewDidLoad
(например, viewWillAppear:
, viewDidUnload
и т. Д.).Это также включает в себя изменения ориентации, и это большая проблема для приложения.Кажется, что единственный класс UIViewController
, полученный как UIViewController
, это когда он добавляется как подпредставление UIWindow
приложения или в класс контейнера (например, UINavigationController
или UISplitViewController
).
Я иду по правильному пути с UISplitViewController
, или есть лучшее решение?
Заранее спасибо за вашу помощь!
Джастин