• Android 使用 RecyclerView 创建动态列表


    Android 使用 RecyclerView 创建动态列表

    记录一下学习过程,RecyclerView 创建动态列表效果如下:
    在这里插入图片描述

    • Recyclerview 认识

      • Recyclerview 库:
      • Recyclerview 指南:
      • RecyclerView 可以显示大型数据集,通过回收有限数量的视图可以有效地滚动这些数据集,同时最大限度减少内存用量。 在实例化 ViewHolder 视图时可以定义单击侦听器。
      • RecyclerView 库会根据需要动态创建元素。顾名思义,RecyclerView 会回收这些单个的元素。当列表项滚动出屏幕时,RecyclerView 不会销毁其视图。相反,RecyclerView 会对屏幕上滚动的新列表项重用该视图。这种重用可以显著提高性能,改善应用响应能力并降低功耗。
    • 使用:在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

      dependencies {
           
        implementation "androidx.recyclerview:recyclerview:1.2.1"
      }
      
      • 1
      • 2
      • 3
      • 4
    • 第二步:定义页面布局 (activity_out_in.xml)

        
        
            
            
            
            
            
        
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
    • 第三步:定义RecyclerView每一项(Item)页面(recyclerview_ware_item.xml)

      
      
      
          
      
              
                
                
                
                  
                  
                  
                  
                  
                  
                  
              
              
          
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25
      • 26
      • 27
      • 28
      • 29
      • 30
      • 31
      • 32
      • 33
      • 34
      • 35
      • 36
      • 37
      • 38
      • 39
      • 40
      • 41
      • 42
      • 43
      • 44
      • 45
      • 46
      • 47
      • 48
      • 49
      • 50
      • 51
      • 52
      • 53
      • 54
      • 55
      • 56
      • 57
      • 58
      • 59
      • 60
      • 61
      • 62
      • 63
      • 64
      • 65
      • 66
      • 67
      • 68
      • 69
      • 70
      • 71
      • 72
      • 73
      • 74
      • 75
      • 76
      • 77
      • 78
      • 79
      • 80
      • 81
      • 82
      • 83
      • 84
      • 85
      • 86
      • 87
      • 88
      • 89
      • 90
      • 91
      • 92
      • 93
      • 94
      • 95
      • 96
      • 97
      • 98
      • 99
      • 100
      • 101
      • 102
      • 103
      • 104
      • 105
      • 106
      • 107
      • 108
      • 109
      • 110
      • 111
      • 112
      • 113
      • 114
      • 115
      • 116
      • 117
      • 118
      • 119
      • 120
      • 121
      • 122
      • 123
      • 124
      • 125
    • 第四步 :创建RecyclerView适配器 ,实现 Adapter 和 ViewHolder

      • ViewHolder 是包含列表中各列表项的布局的 View 的封装容器。Adapter 会根据需要创建 ViewHolder 对象,还会为这些视图设置数据。将视图与其数据相关联的过程称为“绑定”。
      • 定义 Adapter,需要重写以下三个方法
        • onCreateViewHolder():每当 RecyclerView 需要创建新的 ViewHolder 时,它都会调用此方法。此方法会创建并初始化 ViewHolder 及其关联的 View,但不会填充视图的内容,因为 ViewHolder 此时尚未绑定到具体数据。
        • onBindViewHolder():RecyclerView 调用此方法将 ViewHolder 与数据相关联。此方法会提取适当的数据,并使用该数据填充 ViewHolder 的布局。
        • getItemCount():RecyclerView 调用此方法来获取数据集的大小。
          //数据源 实体类对象
          public class TestData {
               
            private int testId;
            private String testName;
            private String testNum;
            private String testDate;
            private String testStatus;
            private String testOutIn;
            //构造方法 。getter 和 setter 方法省略不写(不展示出来)
          }
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
          import android.content.Context;
          import android.view.LayoutInflater;
          import android.view.View;
          import android.view.ViewGroup;
          import android.widget.TextView;
          import androidx.annotation.NonNull;
          import androidx.recyclerview.widget.RecyclerView;
          import java.util.List;
          //部分涉及 项目包名 导入(没写出来)
          //创建 RecyclerView 适配器 。继承于RecyclerView.Adapter,其中VH是我们创建的一个继承于RecyclerView.ViewHolder的静态内部类
          public class WareRecyclerViewAdapter extends RecyclerView.Adapter<WareRecyclerViewAdapter.myView> {
               
            private List<TestData> dataList; // 数据源
            private Context context;//上下文
            private myIt
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
  • 相关阅读:
    电脑重装系统开机后运行慢怎么办
    航空航天巨头罗尔斯·罗伊斯采用“混合方法”研究量子计算
    stm32应用、项目、调试
    Java Double compare()方法具有什么功能呢?
    MySQL——执行一条select语句期间发生了什么
    智能小车开发
    百度边止血边扩张
    受邀参加中日韩创新人才主题交流研讨会
    mac 上配置 git send-email
    【深入浅出 Yarn 架构与实现】5-2 Yarn 三种调度器
  • 原文地址:https://blog.csdn.net/weixin_44519188/article/details/127561581