Могу ли я разрешить андроид деятельности изменить ландшафт только на определенных условиях? - PullRequest
0 голосов
/ 13 декабря 2010

большая часть моего приложения не будет выглядеть так хорошо на ландшафте, но это выбор пользователя, насколько я понимаю, если смотреть приложение на «широком» экране.Однако у меня есть экран автозаполнения, и этот экран не может функционировать в альбомном режиме, поскольку, когда пользователь вводит текст, и я помещаю результаты в представление списка на экране, пользователь не может видеть представление списка, поскольку виртуальная клавиатура покрывает все это.Поэтому я решил определить в манифесте, что это действие не будет использоваться в альбомной ориентации, но я МОГУ использовать его в ландшафтном режиме для устройств с открытой аппаратной клавиатурой ...

Так что я могу определить ее вманифест (не могу найти как) или мне нужно сделать это мелодраматически (обнаружить существование клавиатуры и открыть ее для поддержки или отключить вращение в противном случае).

Кто-нибудь знает, как это сделать?:

Ответы [ 2 ]

1 голос
/ 13 декабря 2010

Вы также можете перехватить эти изменения конфигурации:

<activity ...
    android:configChanges="orientation|keyboardHidden">
</activity>

и в onConfigurationChanged() вы можете решить, что с ними делать.

1 голос
/ 13 декабря 2010

Вы можете попробовать

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

OR

активность android: name = ". SomeActivity" андроид: screenOrientation = "портрет"

это может вам помочь.

...