Я работаю над приложением для iOS, которое должно работать как в альбомной, так и в портретной ориентации, за исключением одного вида, который всегда должен быть в альбомной ориентации. Так что я:
-(BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
return (toInterfaceOrientation == UIInterfaceOrientationLandscapeRight) || (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft);
}
Если я запускаю свое приложение в ландшафтном режиме, перехожу к этому представлению и поворачиваю устройство (iPad), этот метод вызывается и возвращает false, поэтому интерфейс не поворачивается, хороший материал.
НО, если я нахожусь в портрете и попадаю в этот вид, этот метод вызывается и возвращает false, однако ориентация не меняется. В этом контексте, если я поверну устройство в альбомную ориентацию, метод вернет true, и интерфейс повернется правильно, и если я попытаюсь снова повернуть в портретную ориентацию, этот метод вернет false, и интерфейс останется в альбомной ориентации.
Как я могу добиться этого при первом переходе к этому представлению, если устройство находится в портретной ориентации, интерфейс меняется на альбомную?
Кроме того, я пытался с
- (NSUInteger)supportedInterfaceOrientations
но он никогда не вызывается.
Заранее спасибо!