通常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 刷新 这样写是因为加入时的动画效果有那么一小段时间,如果不延时直接刷新的话动画会卡顿,不信可以去试试。 删除也是同理。
转载请注明原文地址: https://ju.6miu.com/read-664503.html