在两个活动之间切换而不丢失数据

时间:2015-10-03 13:13:38

标签: java android

只想在活动之间切换,不想丢失任何活动的信息。例如:

我有一个活动,即activity_one,它有一个listview,从webservice加载数千个数据。 现在我有另一个活动,即activity_two,它有一个listview,从webservice加载数千个数据。

当我从activity_one移动到activity_two时,activity_one数据丢失,反之亦然。

当它加载一次然后不想在应用程序运行时再次执行它。

2 个答案:

答案 0 :(得分:1)

您可以使用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");
}

答案 1 :(得分:0)

真实的是你如何在这两个活动之间移动。切换时,也许你正在完成它们。如果是这种情况,您可以将信息保存在静态(*this).numArrayList方法中,您可以检查它的长度是否为0,如果为0,则尝试加载数据,否则从onCreate加载数据。