2013-08-15 3 views
1

Я заметил проблему, которая, похоже, встречается только на Android 4.3. Я использую AlertDialog, и я увольняюсь и показываю его в функции onCreate, когда происходит изменение ориентации, сохраняя состояние диалога в onSaveInstanceState().Диалог поворота экрана на Android 4.3

В других версиях android (4.0.x, 4.1.x, 4.2.x, 2.3.x) это работает отлично. Я могу повернуть устройство несколько раз, и диалог никогда не исчезнет, ​​но на Android 4.3, если я достаточно поверну по экрану, диалог исчезнет, ​​но сразу же появится снова, если я снова поверну экран. Я заметил, что каждый раз, когда диалог исчезает, я вижу ошибку GL_INVALID_OPERATION в Logcat.

Мне интересно, если это известная ошибка или есть какие-то работы вокруг.

ответ

0

После тяжелых испытаний выяснилось, что это сбой времени. Я не слишком уверен в том, что происходит в фоновом режиме, но я могу предположить, что некоторые объекты GL не готовы при попытке отобразить диалоговое окно, чтобы диалоги не отображались.

Обнаружено обходное решение, просто объявив обработчик в классе и сделав сообщение post обработчику, чтобы показать диалог. Кажется, это дает активности достаточно времени, чтобы все рассказать, и проблема больше не возникает.

Смежные вопросы