我想恢复(进入onRestoreInstanceState)一些数据,更确切地说是一个带有本地文件路径的数组。我的适配器使用此数组来显示图像(本地):
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
....
mPicturesList = savedInstanceState.getParcelableArrayList(BUNDLE_KEY_INPUT_FILE_PATH);
if (mPicturesList != null && mPicturesList.size() > 0) {
// Refresh list
mItemPostPictureAdapter.notifyDataSetChanged();
}
super.onRestoreInstanceState(savedInstanceState);
}
不幸的是我的名单永远不会从这里刷新,我不知道为什么。我在我的适配器中放了一个断点,它从未在这里调用。
在正常流程中,刷新列表完美运行,但不是来自onRestoreInstanceState()函数......
答案 0 :(得分:-1)
视图有自己的恢复方法,如果视图具有android:id
属性集,则会自动调用这些方法。列表视图(如recycle或listview)可以恢复其滚动位置,但不能恢复适配器。
因此,您需要重新创建适配器,使用相应的内容填充它并为RecyclerView设置。