Подтвердить что ты не робот

Проблемы с навигационным стеклом UINavigationController в ландшафтном режиме

У меня есть приложение для iPhone, которое я сейчас конвертирую в универсальный двоичный файл для работы с iPad. Я успешно реализовал все, что мне нужно, с точки зрения компоновки, чтобы теперь в моем приложении поддерживалась полная функциональность ландшафта (ранее я в основном использовал портретный режим для отображения контента).

Но у меня есть одна странная проблема, и она ТОЛЬКО возникает в ландшафтном режиме: когда я нажимаю контроллер представления в стек, он берет два отвода на задней кнопке, чтобы вернуться к предыдущему виду контроллер! В первом касании отображается пустой вид, но с таким же именем на левой навигационной кнопке второй второй контроллер возвращает контроллер к предыдущему виду, как это должно быть.

У меня нет iPad для тестирования, поэтому я полагаюсь на симулятор. Проблема не появляется на iPhone и не отображается, если вы вернетесь в портретный режим.

Мое приложение состоит из контроллера tabbar с контроллерами навигации, загружаемых для его vc:

//application delegate
- (void)applicationDidFinishLaunching:(UIApplication *)application
//....
WebHelpViewController *vc8 = [[WebHelpViewController alloc] init];
UINavigationController *nv8 = [[UINavigationController alloc] initWithRootViewController:vc8];

[self.tabBarController setViewControllers:[NSArray arrayWithObjects:nv1,nv2,nv3,nv4,nv5,nv6,nv7,nv8,nil]];

Чтобы реализовать ландшафтные возможности, UITabBarController переопределяется при авторотации при необходимости:

//CustomTabBarController.m
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return [[(UINavigationController *)self.selectedViewController topViewController] shouldAutorotateToInterfaceOrientation:interfaceOrientation];
}

... отлично работает. Я перемещаюсь в новые представления, используя этот метод.

SomeViewController *vc = [[SomeViewController alloc] init];
[self.navigationController pushViewController:vc animated:YES];
[vc release];

Это только ошибка моделирования? Как исправить эту проблему?

4b9b3361

Ответ 1

Похоже, что другой ViewController отвечает на:

(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

Сначала проверьте это.