окно оповещения находится в том же состоянии, когда ориентация экрана изменилась в Android - PullRequest
0 голосов
/ 08 февраля 2011

В моем приложении для Android отображается окно с предупреждением.Если пользователь не выбирает кнопку в окне предупреждения, я меняю ориентацию экрана, что приводит к исчезновению окна предупреждения.Как изменить ориентацию экрана, не пропуская окно предупреждения?

Ответы [ 2 ]

1 голос
/ 08 февраля 2011

Просто добавьте

android:configChanges="keyboardHidden|orientation"

к тегу активности каждого действия, которое вы не хотите перезапускать при переходе из альбомного в портретный режим в файле manifest.xml.Это заставит ОС перестроить ваш макет, не разрушая его перед перестроением.Метод oncreate больше не будет вызываться, и вы не потеряете состояние активности.Но будьте осторожны, это будет работать, только если вы используете один и тот же файл макета для портретного и ландшафтного режима.

См. вопрос для получения дополнительной информации по этой теме

1 голос
/ 08 февраля 2011

Когда вы меняете ориентацию, ваша активность разрушается и снова вызывается onCreate.

Переопределите onConfigurationChanged, если вам не нужно это поведение, или даже переопределите это поведение, определив android: configChanges в вашем файле манифеста.

Либо сохраните состояние диалога в onSaveInstanceState и восстановите его в onRestoreInstanceState

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...