RecyclerView 瀑布流Item 顺序错乱问题

项目马上上线了,被细致的测试人员查看到,瀑布流商品列表顺序并不是后台返回数据,看到网上大部分解决办法:

manager.setGapStrategy(StaggeredGridLayoutManager.GAP_HANDLING_NONE);
//防止item 交换位置
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
    @Override
    public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
        super.onScrollStateChanged(recyclerView, newState);
        manager.invalidateSpanAssignments(); //防止第一行到顶部有空白区域
    }
});

但是,我这个是商城首页,最外层就是RecyclerView,里边是各种类型布局,并且内嵌套了一列、两列、三列、瀑布流模式RecyclerView,内置的recyclerView 调用上述代码时,不会显示任何数据,所以当我思索再三,最后看到代码更新数据时:

adapter.notifyDataSetChanged();

所以想到调用:

public void setListData(List<GoodsListBean> goodsList) { 
        if (goodsList != null && goodsList.size() != 0) {
            allGoodsList.addAll(goodsList);
            adapter.notifyItemChanged(allGoodsList.size()-goodsList.size());
        }
    }

完美当前问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值