1
我有一个Android应用程序,在那里我有一个的ListView有自定义适配器和某些项目静态有的动态(从网址加载它们)。长时间的停顿之后,动态地添加的项目是不是有
它完美的作品,有没有错误,但是当我停下我的应用程序与其他应用程序播放(如铬冲浪),然后当我回到应用程序时,静态项目是有的,但动态物品消失了。
编辑:我使用volley StringRequest和Gson从url加载项目。
我有一个Android应用程序,在那里我有一个的ListView有自定义适配器和某些项目静态有的动态(从网址加载它们)。长时间的停顿之后,动态地添加的项目是不是有
它完美的作品,有没有错误,但是当我停下我的应用程序与其他应用程序播放(如铬冲浪),然后当我回到应用程序时,静态项目是有的,但动态物品消失了。
编辑:我使用volley StringRequest和Gson从url加载项目。
你必须存储你取的数据,你可以在2种不同的方式
可以保存数据,当你回来的时候使用的onSaveInstanceState和onRestoreInstanceState方法
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
// save your date like this
savedInstanceState.putBoolean("MyBoolean", true);
savedInstanceState.putDouble("myDouble", 1.9);
savedInstanceState.putInt("MyInt", 1);
savedInstanceState.putString("MyString", "Welcome back to Android");
// etc.
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
// Restore your date like this and assign it to your list or where ever you need
// This bundle has also been passed to onCreate.
boolean myBoolean = savedInstanceState.getBoolean("MyBoolean");
double myDouble = savedInstanceState.getDouble("myDouble");
int myInt = savedInstanceState.getInt("MyInt");
String myString = savedInstanceState.getString("MyString");
}
您的应用程序恢复它实现这一目标
您可以将其存储在数据库中,每当你移动到onRestoreSaveInstance
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
// fetch data from database and assign it back to your UI
}
由于其恢复,至少我知道那里的PROBL em是,但我必须保存的数据是一个对象。我可以在下面的onRestore方法中调用我的loadDynamicItems()函数吗? – Unknown
是的,你可以在onRestoreInstance方法中调用它来恢复数据 –