Приложение меняет макет при вращении - PullRequest
0 голосов
/ 31 июля 2011

У меня в приложении два макета - всегда виден только один из них - назовем их базовыми и альтернативными.Когда приложение запускается, базовый макет становится видимым, альтернативный - пропал.Нажатие на кнопку может изменить это на противоположное - основное исчезло, альтернатива видна.Нажатие кнопки в альтернативной раскладке - меняет ее обратно.
Основная проблема - когда я нахожусь в альтернативном виде компоновки и поворачиваю экран, он возвращается к базовому.То же самое происходит после выдвижения клавиатуры на моем Milestone.
Есть ли какой-нибудь простой способ предотвратить это?
Я попытался добавить в манифест

android:configChanges="keyboardHidden|orientation"

, а затем в основное действие метод onConfigurationChanged, который фактически ничего не делает, но, полагаю, яне понимаю идею должным образом.
Заранее спасибо за помощь.

Ответы [ 2 ]

0 голосов
/ 31 июля 2011

Я думаю, что вы должны узнать об этом.Если вы дадите идентификатор для своих элементов в файле XML, ваши элементы не исчезнут.Или, если вы создадите новый макет для файла с суффиксом layout-land, это тоже будет здорово.Надеюсь, это поможет.

0 голосов
/ 31 июля 2011

Когда ориентация меняется, действие воссоздается. Итак, макеты перекачиваются и т. Д. Вы должны иметь логическое значение, которое переключается при изменении макетов. Затем проверьте логическое значение в вашем методе onCreate и отобразите правильный макет. Эта ссылка может быть полезной.

...