可以使用Bundle来保存当前活动的状态及数据,这样当应用程序切换时,数据就不会丢失。 例如,假设我们要在Activity中保存一个字符串的值:
@Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putString("myString", "Hello world"); }
然后在onCreate方法中恢复状态:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
if (savedInstanceState != null) {
String myString = savedInstanceState.getString("myString");
// use the saved value here
}
}
这样,在应用程序切换时,我们就可以恢复之前保存的数据了。注意,在onSaveInstanceState方法中保存的数据应该是基本类型或可序列化的对象。