iPhone / iPad универсальное приложение ориентация - PullRequest
4 голосов
/ 23 февраля 2011

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

Возможно ли это?

Ответы [ 4 ]

5 голосов
/ 23 февраля 2011
- (BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad && UIInterfaceOrientationIsLandscape(interfaceOrientation)) {
        return YES;
    } else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone && UIInterfaceOrientationIsPortrait(interfaceOrientation)) {
        return YES;
    }

    return NO;
}
2 голосов
/ 23 февраля 2011
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
  // The device is an iPad running iPhone 3.2 or later.
  // Rotate to landscape
}
else {
  // The device is an iPhone or iPod touch.
  // Rotate to portrait
}

" Как заставить UI_USER_INTERFACE_IDOM работать с iOS 3.2? "

0 голосов
/ 03 марта 2015

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

Код Swift:

func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> Int {
    if UIDevice.currentDevice().userInterfaceIdiom == .Phone {
        return Int(UIInterfaceOrientationMask.Portrait.rawValue)
    } else {
        return Int(UIInterfaceOrientationMask.LandscapeLeft.rawValue | UIInterfaceOrientationMask.LandscapeRight.rawValue)
    }
}
0 голосов
/ 24 февраля 2011

Также вы можете использовать [UIDevice currentDevice] .model или [UIDevice currentDevice] .systemName, чтобы распознать устройство, а затем в методе mustAutoRotate вернуть interfaceOrientation == UIInterfaceOrientationLandscapeLeft для ipad и interfaceOrientation == UIInterfaceOrientationPortrait для типа устройства для ipadtationPortrait.

...