Подтвердить что ты не робот

Разделить вид в портретном режиме!

Apple предоставляет разделенное представление только для пейзажа, но не для портретного режима. Есть ли способ достичь splitview в портретном режиме?

[splitViewController setHidesMasterViewInPortrait:NO];

Это сработает. Но этот API не документирован (закрыт).

Спасибо,
Манджунат

4b9b3361

Ответ 1

Для iOS5 +,

Перейдите к detailViewController. Ваш detailViewController должен иметь UISplitViewControllerDelegate. Просто просто отбросьте этот код в:

- (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation{
    return NO;
}

Это сделает трюк. И это общедоступный API.

Ответ 2

Мой маленький вклад здесь.

Ответ на байт верен до iOS 7. Начиная с iOS 8 вы должны использовать preferredDisplayMode

Например, чтобы показать оба диспетчера представлений в портретном режиме, выполните следующие действия:

self.splitViewController.preferredDisplayMode = UISplitViewControllerDisplayModeAllVisible;

Надеюсь, это поможет!

Ответ 3

Взгляните на MGSplitViewController.

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

Ответ 5

обновление в iOS 8 xcode 6+

if let splitVCExists = self.splitViewController{
        splitVCExists.preferredDisplayMode = UISplitViewControllerDisplayMode.AllVisible
    }    

документ: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UISplitViewController_class/index.html#//apple_ref/occ/instp/UISplitViewController/preferredDisplayMode

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

Ответ 6

Когда-то назад я попытался добиться аналогичной вещи. Попробовав код Мэтта и нечаянно пытаясь создать категорию, я понял, что единственный способ сделать это (так, что Apple не отклоняет ваше приложение) - использовать два пользовательских представления. Обратитесь к этому вопросу.