Изменить размер MasterViewController при запуске в качестве поповера - PullRequest
7 голосов
/ 31 марта 2012

При использовании контроллера с разлитым видом у меня есть основной и подробный вид. Когда iPad находится в портретном режиме, основной вид отображается как всплывающее окно. Как мне отрегулировать высоту мастер-вида (всплывающее окно)? Я пробовал:

 self.contentSizeForViewInPopover = CGSizeMake(320.0, 2 * 52.0); 

Но я не уверен, что это нужно было установить?

enter image description here

Ответы [ 2 ]

5 голосов
/ 04 апреля 2012

Раньше вы могли устанавливать размер в viewDidLoad с помощью contentSizeForViewInPopover. Но в iOS 5.1 стиль представления главного контроллера представления был изменен, чтобы скользить, а не казаться стандартным popover. Насколько я могу судить, он все еще является UIPopover, но мы больше не можем изменять его размер. Я попробовал contentSizeForViewInPopover в представлении, а также setPopoverContentSize для всплывающего окна , как предлагалось на форумах разработчиков , но ни один из них не дал никакого эффекта.

Ссылка на класс * UISplitViewController не подтверждает это изменение, равно как и ссылки на классы для UIViewController или UIPopoverController и Программирование контроллера представления Руководство по-прежнему показывает старый стиль всплывающего окна контроллера основного вида.

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

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

0 голосов
/ 31 марта 2012

Я видел, как образцы Apple используют метод awakeFromNib главного контроллера, а также viewDidLoad.Я не уверен, что есть первостепенная причина выбора одного или другого.

...