onSavedInstanceState не работает при возврате к активности
Используется намерение от нажатия кнопки, чтобы перейти к другой деятельности, а затем позже вернуться к исходной деятельности.
я пытался сохранить два целых числа при выходе из действия для другого действия, затем позже, когда я возвращаюсь к исходному действию, я получаю нулевое значение для пакета.
Кто-нибудь знает, почему это не работает?
я использовал набор saveInstanceState для сохранения переменных при повороте экрана, и он работает в этой ситуации, однако, когда я ухожу, чтобы просмотреть другое действие, а затем возвращаюсь к этому действию, набор не был сохранен. получить ноль по возвращении.
метод onSavedInstanceState
@Override
public void onSaveInstanceState(Bundle outState){
super.onSaveInstanceState(outState);
outState.putInt("index", index);
outState.putInt("top", top);
} // end onSavedInstanceState
первая часть метода onCreate, содержащая код для получения сохраненных переменных saveInstatnceState
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_inspectioninfoselectionlist);
if(savedInstanceState!=null){
index = savedInstanceState.getInt("index");
top = savedInstanceState.getInt("top");
Log.i("$$$$$$$", "value of index and top returned after activity starts" + index + " " + top);
}else if (savedInstanceState == null){
Log.i("$$$$$$$", "saved instance state is null" + index + " " + top);
}
1 ответ
onSaveInstanceState()
вызывается при изменении конфигурации, такой как ориентация экрана, изменение языка и т. д.
Открытие другого действия не является изменением конфигурации, поэтому метод не вызывается.