2014-09-26 50 views
0

與iOS 8.0在Xcode 6,沒有什麼地方在那裏我可以看到你可以爲每個設備指定,如果你希望它肖像或風景...景觀只在iOS的某些設備8.0

我想有除了6 Plus以外,所有iPhone都只有肖像,這應該既是肖像又是風景。我希望所有的iPad都是肖像和風景。

有沒有辦法做到這一點,甚至是一種解決方法呢?

+1

我想你需要看看新的iOS 8 Rotation API和'UITraitCollection'類。然後根據結果進行旋轉。我只在'WWDC 2014 Cocoa Touch#202中的新特性'和'WWDC 2014構建UIKit#216的自適應應用程序'中看到了概述,但是由於我沒有使用新API編碼任何代碼,因此無法提供任何代碼。文檔鏈接到'UITraitCollection':https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITraitSet_ClassReference/index.html。 – 2014-09-26 20:10:46

回答

2

要高於其他的iPhone 6+不同,你需要實現supportedInterfaceOrientations是這樣的:

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

我還沒有我喜歡的是helper方法的方式解決,但你可以開始與此:

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

忽略.中的#define所以是奇怪的格式化沒有之前。