2012-02-17 2 views
0

У меня есть проблема в пользовательском представлении. Его состояние не сохраняется после того, как я выключу экран и верну его обратно.Android: onRestoreInstanceState не вызывается после пробуждения экрана (и блокировки)

onSaveInstanceState вызывается правильно, когда выключен экран, но когда я включаю экран, onRestoreInstanceState не вызывается. Я понимаю, что это потому, что активность не воссоздана, но я не знаю, что еще использовать для восстановления состояния представления.

Я думаю, что мне нужно будет что-то сделать в onStart() или onResume(), но я не хочу делать это в действии, но в представлении, поскольку представление используется в нескольких действиях, и это быть очень неудобным.

Я пробовал несколько других методов, например onWindowsVisibilityChanged, но не повезло.

Какой еще метод я мог использовать?

спасибо.

РЕДАКТИРОВАТЬ: Детали: то, что я хочу сохранить, является только логическим, чтобы сообщить мне, включена или выключена кнопка, поэтому я могу изменить ее внешний вид. Я знаю, что он должен оставаться открытым без моего вмешательства, но реализация немного затруднительна.

ответ

1

После нескольких попыток мне удалось получить необходимое мне событие в onWindowFocusChanged(Boolean hasWindowFocus). Что касается меня, это дает мне ту же возможность, что и onResume(), потому что она называется так же, как окно становится видимым и выводится на передний план.

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