0

С прошивкой 8.0 в Xcode 6, там нигде, где я могу видеть, что вы можете указать для каждого устройства, если вы хотите его портрет или пейзаж ...Пейзаж только для некоторых устройств прошивкой не 8,0

Я хочу иметь все iPhone только портрет, кроме 6 Plus, который должен быть как портретным, так и ландшафтным. И я хочу, чтобы все iPads были как портретными, так и пейзажными.

Есть ли способ сделать это или даже обходным путем?

+1

Думаю, вам нужно будет изучить новый API вращения iOS 8 и класс 'UITraitCollection'. Затем разрешить поворот на основании результатов. Я видел только обзор в WWDC 2014. Что нового в Cocoa Touch # 202' и 'WWDC 2014 Building Adaptive Apps с UIKit # 216', но не может предоставить какой-либо код, поскольку я ничего не кодировал с помощью нового API. Ссылка на документацию на 'UITraitCollection': https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITraitSet_ClassReference/index.html. –

ответ

2

Чтобы сделать 6+ отличается от других айфонов вам нужно реализовать supportedInterfaceOrientations что-то вроде этого:

- (NSUInteger)supportedInterfaceOrientations { if (iPadOrPhonePlus()) { return UIInterfaceOrientationMaskAll; } return UIInterfaceOrientationMaskPortrait; }

Я не остановился на пути, я бы для этого вспомогательного метода, но вы можете начать с этого:

.#define iPadOrPhonePlus() ((UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) || [[UIScreen mainScreen] scale] > 2)

игнорировать . перед #define SO было это странно форматирование без этого.

 Смежные вопросы

  • Нет связанных вопросов^_^