欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

RecyclerView嵌套RecyclerView滑动卡顿的解决方法

程序员文章站 2022-05-16 12:15:08
android 利用recyclerview仿淘宝订单页面实现,解决recyclerview嵌套recyclerview滑动卡顿 问题: 最近在项目中碰到一个问题,...

android 利用recyclerview仿淘宝订单页面实现,解决recyclerview嵌套recyclerview滑动卡顿

RecyclerView嵌套RecyclerView滑动卡顿的解决方法

问题:

最近在项目中碰到一个问题,类似于淘宝订单页面,由于每个订单项中可能会包含多个具体的项目,要想实现这种效果,一般来说需要在recyclerview中嵌套recyclerview,这样做会导致,如果订单项中的具体项目过多,超过一屏,展示效果会有卡顿现象,原因就是由于两个recyclerview的存在,使得滑动的view滑出当前屏幕的释放存在冲突

思路:

参照 android仿淘宝订单页面效果

ideaqjjl 分析的很详细,我是从他的分析中得到的思路,对于copy党来说,最大的痛苦莫过于没有源码,于是整合了一下ideaqjjl的代码,得到了解决思路,将每一行都看作一个item,相当于用一个recyclerview解决了用嵌套才能得到的结果,效果真心不错,在此灰常感谢ideaqjjl提供的思路及代码

解决方式:

根据recyclerview的分组设置,将每一行都作为一个item,就相当于在一个recyclerview中添加item,这样就可以很好的解决问题

@override
  public myviewholder oncreateviewholder(viewgroup parent, int viewtype) {
    myviewholder holder =
        new myviewholder(list.get(viewtype).getview(mcontext, parent, miflater));
    return holder;
  }

  /**
   * 每一个位置的item都作为单独一项来设置
   * viewtype 设置为position
   * @param position
   * @return
   */
  @override
  public int getitemviewtype(int position) {

    return position;
  }

结语

奉上git地址,有什么问题直接评论即可,欢迎指正批评,共同进步!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。