В идеале ваш контроллер представления должен реализовать:
- (BOOL)shouldAutorotateToInterfaceOrientation:
(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}
Тогда единственной допустимой ориентацией для этого контроллера представления является одна из альбомных ориентаций.
Если у вас нет довольно сложной иерархии представлений, котораяиспользует контроллер панели вкладок, это должно привести к повороту представления при его нажатии.
Если это не работает, вы можете попробовать:
[[UIDevice currentDevice] performSelector:
@selector(setOrientation:)
withObject:(id)UIInterfaceOrientationLandscapeRight];
У меня есть приложение в AppStore, котороеиспользует этот код, потому что в моем случае у меня есть сложная иерархия представлений, которая не позволяет работать только той, которая мне нужна, только в альбомной ориентации.