按下后退按钮或关闭应用程序时 RecyclerView 数据不可见
RecyclerView Data not visible when back button pressed or app closed
onSaveInstanceState 和 onRestoreInstanceState 不工作。每当我按下后退按钮或退出应用程序时,自定义 recyclerView 的数据在上传下一个文件之前是不可见的。当我上传所有数据时,因为我已将其存储在共享首选项中。
创建时:
if (savedInstanceState != null) {
// Restore value of members from saved state
savedInstanceState.get(String.valueOf(savedInstanceState));
}
else
{
//initialize members with default values for a new instance
setContentView(R.layout.activity_resource);
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
}
@Override
public void onRestoreInstanceState(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) {
super.onRestoreInstanceState(savedInstanceState, persistentState);
}
onSaveInstanceState
如果布局中的所有视图都有 id,则自动存储视图状态。
对于 ListAdapter
内的数据恢复,我建议在 ViewModel
内或至少 Presenter
内恢复列表,具体取决于您使用的架构。
onSaveInstanceState 和 onRestoreInstanceState 不工作。每当我按下后退按钮或退出应用程序时,自定义 recyclerView 的数据在上传下一个文件之前是不可见的。当我上传所有数据时,因为我已将其存储在共享首选项中。
创建时:
if (savedInstanceState != null) {
// Restore value of members from saved state
savedInstanceState.get(String.valueOf(savedInstanceState));
}
else
{
//initialize members with default values for a new instance
setContentView(R.layout.activity_resource);
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
}
@Override
public void onRestoreInstanceState(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) {
super.onRestoreInstanceState(savedInstanceState, persistentState);
}
onSaveInstanceState
如果布局中的所有视图都有 id,则自动存储视图状态。
对于 ListAdapter
内的数据恢复,我建议在 ViewModel
内或至少 Presenter
内恢复列表,具体取决于您使用的架构。