[英]switch between two activities without data lost
只想在活动之间进行切换,并且不想丢失任何活动的信息,例如:
我有一个活动,即具有一个listview的activity_one,从webservice加载了数千个数据。 现在我有另一个活动,即具有一个listview的activity_two,从webservice加载了数千个数据。
当我从activity_one移到activity_two时,activity_one的数据丢失了,反之亦然。
当它加载一次,然后不想在应用程序运行时再次做。
您可以使用onSaveInstanceState和onRestoreInstanceState在活动之间保留数据。
这是一个示例演示
float[] localFloatArray = {3.14f, 2.718f, 0.577f};
String localUserName = "Euler";
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
//Save the relevant information
outState.putString("name", localUserName);
outState.putFloatArray("array", localFloatArray);
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
//Restore the relevant information
localUserName = savedInstanceState.getString("name");
localFloatArray = savedInstanceState.getFloatArray("array");
}
真正的事情是您如何在这两个活动之间移动。 切换时可能正在整理它们。 如果是这种情况,则可以将信息保存在静态ArrayList
并且可以在onCreate
方法上检查其长度是否为0,如果为0,则尝试加载数据,否则从ArrayList
加载数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.