Как я могу всегда держать контроллер вида в портретном режиме?

Это самый простой способ объяснить это, имейте в виду, что представление вложено в контроллер навигации:

1.) Приложение запускается, и независимо от того, в какой ориентации находится устройство, приложение всегда находится в портретной ориентации. У меня есть метод shouldRotate, возвращающий нет, поэтому он никогда не вращается.

2.) Я нажимаю кнопку, перехожу к другому виду и поворачиваю его в альбомную ориентацию (что нормально)

3.) Находясь в альбомной ориентации в другом представлении, я нажимаю кнопку «Назад» на контроллере навигации, и он возвращает меня к контроллеру представления, который я НЕ хочу поворачивать в альбомной ориентации.

Каков хороший способ постоянно поддерживать мой основной контроллер представления в портретной ориентации, когда он исходит из контроллера представления в альбомной ориентации?

Спасибо!


person JMarsh    schedule 07.01.2013    source источник


Ответы (1)


Если ваш дизайн позволяет это, вы можете просто скрыть кнопку «Назад», пока приложение не повернется обратно в книжную ориентацию. Это заставит их быть в нужной вам ориентации, когда они вернутся назад.

person rooster117    schedule 07.01.2013
comment
Я сделал это, но подумал, что это будет плохой дизайн и будет выглядеть как ошибка. Может быть, серая кнопка «Назад»? Не уверен, но я надеюсь, что есть более элегантный способ сделать это. - person JMarsh; 08.01.2013
comment
Проблема в том, что даже если вы сможете принудительно настроить ориентацию, это все равно будет выглядеть очень плохо, потому что пользователь будет держать устройство в неправильной ориентации, и это тоже будет выглядеть как ошибка. Я сам использовал этот метод, но он был для функции полноэкранного видео, поэтому это было вполне приемлемо в качестве решения. - person rooster117; 08.01.2013