Xcode 6 Adaptive Storyboard разные сегменты на устройство

У меня есть некоторые проблемы с недавно представленной адаптивной раскадровкой в ​​Xcode 6. Приложение для iPhone закончено, и теперь я хочу создать из него универсальное приложение. Давайте предположим, что я viewcontroller который отображает некоторые клетки и детали viewcontroller в котором отображаются данные о ячейках.

На iPhone: когда я нажимаю на ячейку, push segue в подробный вид. На iPad: я хотел бы иметь modal segue вместо толчка.

Могу ли я изменить это в prepareForSegue или как-то еще?

РЕДАКТИРОВАТЬ: Я нашел способ... но я не совсем доволен этим. Если у кого-то есть лучшее решение, пожалуйста, скажите мне...

Я сделал два сегмента и различил их в коде.

    if (UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Pad) {
        self.performSegueWithIdentifier(kSegueToDetailModal, sender: object)
    }
    else if (UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Phone) {
        self.performSegueWithIdentifier(kSegueToDetail, sender: object)
    }

1 ответ

Решение

Вы можете иметь два сегмента и различать в коде, как вы предлагаете, но я рекомендую использовать адаптивные классы размеров, чтобы определить, какой сегмент вы хотите, а не userInterfaceIdiom, Таким образом, вы также можете использовать модальные переходы, например, с iPhone 6 Plus в альбомной ориентации и iPad.

Другие вопросы по тегам