[英]refreshing a RecyclerView from onRestoreInstanceState() doesn't work
我想还原一些数据(到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()函数运行。
视图具有自己的恢复方法,如果视图设置了android:id
属性,则会自动调用该方法。 列表视图(如recycle或listview)可以恢复其滚动位置,但不能恢复适配器。
因此,您需要重新创建适配器,用相应的内容填充适配器并为RecyclerView设置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.