Представление ModalViewController меняет ориентацию моего приложения при запуске - PullRequest
0 голосов
/ 08 февраля 2012

Я пытаюсь поддерживать только ландшафт. Существует новое требование, чтобы показать это диалоговое окно, которое объясняет некоторые вещи о нашем приложении в первый раз. Итак, в моем первом запущенном контроллере view, в viewDidLoad, у меня есть этот код:

BOOL showFirstTimeUse = [[NSUserDefaults standardUserDefaults] boolForKey:@"ShowFirstTimeUse"];
if (!showFirstTimeUse) {
    FirstUseViewController *tvc = [[FirstUseViewController alloc] initWithNibName:@"FirstUseViewController" bundle:nil];
    tvc.modalPresentationStyle = UIModalPresentationFormSheet;
    tvc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    [self presentModalViewController:tvc animated:YES];
    [tvc release];
}

Затем в FirstUseViewController я определил это:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return UIInterfaceOrientationLandscapeLeft | UIInterfaceOrientationLandscapeRight;
}

В IB я не изменил ни одну из настроек по умолчанию. Я просто опустил UIWebView в верхнюю левую часть экрана, чтобы показать свои данные, и подключил к ним розетку, чтобы я мог легко отображать форматированный текст.

Когда я запускаю свое приложение сейчас, представление этого контроллера представления заставляет мое приложение запускаться в портретной, а не в альбомной ориентации. Как это исправить? Спасибо.

1 Ответ

0 голосов
/ 08 февраля 2012

Ваша реализация shouldAutorotateToInterfaceOrientation: неверна; Это всегда будет оценивать истину. Вы, вероятно, хотите использовать:

return UIInterfaceOrientationIsLandscape(interfaceOrientation);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...