package example.com.saveinstancestatetest; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.widget.TextView; public class MainActivity extends Activity { public static final String TAG = "SavedInstanceStateTest"; TextView text; String name; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); text=findViewById(R.id.text); Log.i(TAG,"onCreate()"); if(savedInstanceState!=null){ name=savedInstanceState.getString("name"); Log.i(TAG,"onCreate()-->name:" + name); } } @Override protected void onSaveInstanceState(Bundle state){ super.onSaveInstanceState(state); Log.i(TAG,"onSaveInstanceState()"); state.putString("name","xiaomi"); } @Override protected void onRestoreInstanceState(Bundle saveInstanceStat){ super.onRestoreInstanceState(saveInstanceStat); if(saveInstanceStat!=null){ name=saveInstanceStat.getString("name"); Log.i(TAG,"onRestoreInstanceState()--->name:" + name); } } @Override protected void onResume(){ super.onResume(); Log.i(TAG,"onResume()"); text.setText(name); } @Override protected void onDestroy(){ super.onDestroy(); Log.i(TAG,"onDestroy()"); } } 参考文档:https://www.cnblogs.com/denghaicheng/p/4514878.html
DEMO: Activity的SavedInstanceState()和 onRestoreInstanceState()
最新推荐文章于 2024-02-01 14:46:21 发布