Android RecyclerView+StaggerLayoutManager实现瀑布流单选item乱跳

排查原因

  • 解决方法

排查原因

通过排查原因,是因为我再使用刷新指定Item时出现了这个问题,

      recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
                      @Override
                      public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                          super.onScrollStateChanged(recyclerView, newState);
                      layoutManager.invalidateSpanAssignments();
                      }
                 });
  //这一句代码导致item乱跳
  notifyItemChanged(j);

这两处共同导致了item乱跳的问题

解决方法

使用新的方法实现定向刷新

找到一篇文章:https://juejin.im/entry/57c64fb07db2a20068220fcd

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Android RecyclerView 是一种强大的用于显示列表数据的视图组件,可以通过它来实现编写、单选、全选、删除等各种操作。以下是实现这些功能的一种可能的方式: 1. 编辑功能:为每个列表项添加一个编辑按钮,当用户点击编辑按钮时,进入编辑模式。可以通过设置标志位来控制是否进入编辑状态,更新列表项的UI以显示编辑状态。 2. 单选和全选功能:为每个列表项添加一个复选框,并在顶部或底部添加一个全选的复选框。当用户点击复选框时,更新复选框的状态,并根据选择的状态进行相应的操作。 3. 删除功能:为每个列表项添加一个删除按钮或者长按列表项触发删除操作。当用户点击删除按钮或长按列表项时,从数据源中删除该项,并更新RecyclerView的显示。 4. 动画效果:可以为RecyclerView的添加、删除操作添加动画效果,以提升用户的操作体验。可以通过使用RecyclerView的默认动画或自定义动画来实现一个例子是,当用户点击删除按钮时,可以使用`ItemAnimator`类中提供的默认动画效果,如`DefaultItemAnimator`,它会在删除时提供淡出动画效果,给用户一个直观的反馈。 以上实现方式只是其中的一种,具体实现取决于具体的应用需求和设计风格。但总的来说,通过设置复选框、按钮等视图组件来实现功能,并结合数据源的更新和RecyclerView的适配器的刷新来完成列表的编辑、单选、全选、删除等功能,最后通过动画效果来提升用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值