onSaveInstanceState () и onRestoreInstanceState () - PullRequest
134 голосов
/ 04 ноября 2010

Я пытаюсь сохранить и восстановить состояние Activity, используя методы onSaveInstanceState() и onRestoreInstanceState().

Проблема в том, что он никогда не входит в метод onRestoreInstanceState(). Кто-нибудь может объяснить мне, почему это так?

Ответы [ 12 ]

0 голосов
/ 18 мая 2016

Я просто наткнулся на это и заметил, что в документации был мой ответ:

"Эта функция никогда не будет вызываться с нулевым состоянием."

https://developer.android.com/reference/android/view/View.html#onRestoreInstanceState(android.os.Parcelable)

В моем случае мне было интересно, почему onRestoreInstanceState не вызывался при первоначальном создании. Это также означает, что если вы ничего не сохраните, он не будет вызываться при восстановлении вашего представления.

0 голосов
/ 22 октября 2013

В моем случае, onRestoreInstanceState был вызван, когда активность была восстановлена ​​после изменения ориентации устройства. Сначала был вызван onCreate(Bundle), но в комплекте не было ключа / значений, которые я установил с помощью onSaveInstanceState(Bundle).

Сразу после этого, onRestoreInstanceState(Bundle) был вызван с пакетом, который имел правильный ключ / значения.

...