3

Я хочу, чтобы сделать поведение, как приложение контактов в IPad с ландшафтным режимом.Present Модальная Открыть в Detail View в UISplitViewController

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

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

какой метод следует использовать? showDetailViewController? или presentViewController? Я не знаю, как показать Modal только в Detail View.

+0

да, здесь же, вы нашли ответ? – kokemomuke

ответ

2

Во-первых, вам нужно установить свойство Детальный вид контроллера definesPresentationContext = true. Итак, теперь он определяет presentation context. По контроллерам просмотра по умолчанию не обращать внимание на текущий контекст, когда они представлены, следовательно, вы должны сделать viewController.modalPresentationStyle = .CurrentContext

Вот как полным метод выглядит

func adaptivePresentViewController(viewController: UIViewController) { 
    let detailVC = splitViewController!.viewControllers[1] 
    detailVC.definesPresentationContext = true 
    viewController.modalPresentationStyle = .CurrentContext 
    detailVC.presentViewController(viewController, animated: true, completion: nil) 
} 
Смежные вопросы