интерфейс Ориентация iPad

Я делаю свою версию приложения для iPhone, версия для iPhone pro в приложении работает только с версией видения "Портрет", но это будет пейзажное видение iPad, посмотрите, что я сделал до сих пор:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
     return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft);
}
else{
     return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

он определяет, будет ли iPhone, и если это так, будет находиться в альбомной ориентации в любом положении, это то, что iPad, iPhone Pro - это наоборот.

У меня не получилось, не вышло.

кто-то уже делал нечто подобное? По сути, я хочу просто: iPhone == Портрет, iPad == Пейзаж;


Я пытался реализовать в своем проекте, но все еще всегда с изображением в портретном режиме как на iphone, так и на ipad,

Я получаю эту ошибку при отладке:

Контроллер представления вернул NO из -shouldAutorotateToInterfaceOrientation: для всех ориентаций интерфейса. Он должен поддерживать хотя бы одну ориентацию.


person jucajl    schedule 10.03.2012    source источник
comment
Я не ... Мое приложение - это радиоплеер для просмотра магазина приложений от JP Floripa, вы можете увидеть пример того, как я хочу вас, iPhone == Портрет и iPad == Пейзаж, я не знаю, есть ли они два отдельных приложения или универсальные, я не знаю, это два отдельных приложения или универсальные.   -  person jucajl    schedule 10.03.2012
comment
Это не правда. У меня есть приложения, поддерживающие только альбомную ориентацию. Ключ поддерживает оба ландшафтных режима, левый и правый. И это правило обоих способов не применяется для портретного режима. У меня есть много приложений, которые поддерживают только обычную портретную ориентацию, но не перевернутую.   -  person erkanyildiz    schedule 10.03.2012
comment
а как насчет моего кода? Есть ли у кого-нибудь советы, как это сделать? iPhone == Портрет, iPad == LandsCape   -  person jucajl    schedule 10.03.2012


Ответы (1)


Попробуйте.

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
        return (interfaceOrientation == UIInterfaceOrientationPortrait);
    } else {
    return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (interfaceOrientation == UIInterfaceOrientationLandscapeRight);
    }
}

у меня отлично работает!

person Mick MacCallum    schedule 10.03.2012