混淆Android活动生命周期bahavior

混淆Android活动生命周期bahavior,android,android-activity,lifecycle,Android,Android Activity,Lifecycle,我做了一个简单的程序,覆盖了每个生命周期方法,一切都按照我的预期工作,除了onrestoreinnstancestate(Bundle savedInstanceState) 我认为这个方法是错误的 @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); Toast.ma

我做了一个简单的程序,覆盖了每个生命周期方法,一切都按照我的预期工作,除了
onrestoreinnstancestate(Bundle savedInstanceState)

我认为这个方法是错误的

@Override
    protected void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onRestoreInstanceState(savedInstanceState);   
    Toast.makeText(getBaseContext(), "onRestoreInstanceState - Activity1 ", Toast.LENGTH_SHORT).show();
    }
但它从未被呼叫过

我也覆盖了
onSaveInstanceState(Bundle outState)
,我可以看到系统调用它,但从未覆盖过
onRestoreInstanceState(Bundle savedInstanceState)
。当我按下后退按钮左右时,我可以看到系统调用了
onRestore()
OnStart()
onResume()
,并且UI(只有两个按钮)显示正确

在不调用RestoreInstanceState(Bundle savedInstanceState)的情况下,如何还原UI?我只做
setContentView(R.layout.main)
onCreate(savedInstanceState)
。那么,它如何在不调用
onCreate()
onRestoreInstanceState()的情况下恢复UI呢

如果有人能解释一下,我会很感激的


谢谢。

这里的文档有点混乱,但我认为这种方法只是作为onCreate处理存储状态的一种替代方法,在循环的后期发生。只有当活动被销毁并使用state重新创建时,才会调用它;这通常发生在方向更改期间。它不打算在活动之间的普通转换期间处理状态

另见