您的位置:首页 > 其它

添加或删除RecyclerView的item后 刷新Adapter中的数据源的个数

2017-04-13 10:12 435 查看
通常Recycler给Adapter赋上数据源的时候利用:

adapter.notifyDataSetChanged();


这样一般是在初始化界面 从网络获取到数据后 直接赋给adapter的写法。

然后再动态的增加条目,又希望带有动画效果,可以这么写:

adapter.notifyItemRangeInserted(int positionStart, int itemCount);


嗯,在RecyclerView中 数据给加上去了 并且有一个动画效果。

但是,注意Adapter 中,这个数据源并没有增加。

这时,就要用到 notifyDataSetChanged() 这个方法了

在 调用加入的方法后 再调用全部刷新的方法。我的写法是这样的:

adapter.notifyItemRangeInserted(int positionStart, int itemCount);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
adapter.notifyDataSetChanged();
}
},400);


利用Handler延时400ms 刷新 这样写是因为加入时的动画效果有那么一小段时间,如果不延时直接刷新的话动画会卡顿,不信可以去试试。

删除也是同理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐