码迷,mamicode.com
首页 > 移动开发 > 详细

安卓开发笔记 RecycleView (三)

时间:2017-07-01 01:02:04      阅读:328      评论:0      收藏:0      [点我收藏+]

标签:idg   creat   ada   layout   list   get   weight   str   padding   

创建RecycleView的步骤:

在Layout中创建RecycleView

创建List Item 和 ViewHolder

添加RecycleView 适配器

添加LayoutManager 和 将所有事情连接起来。

 

练习一:RecycleView 布局

第一 步:在app/build.gradle(Module:app)文件中添加依赖

dependencies {
    compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])
    compile ‘com.android.support:appcompat-v7:25.1.0‘

    // TODO (1) Add RecyclerView dependency
    compile ‘com.android.support:recyclerview-v7:25.1.0‘
}

 

第二步: 添加RecycleView到布局中

    <!--TODO (2) Replace the TextView with a RecyclerView with an id of "@+id/rv_numbers"-->
    <!--TODO (3) Make the width and height of the RecyclerView match_parent-->
    <android.support.v7.widget.RecyclerView
     android:id="@+id/rv_numbers"
android:layout_width="match_parent" android:layout_height="match_parent"> </android.support.v7.widget.RecyclerView>

 

 

练习二:使用ViewHolder

1. 在app/res/layout/目录下新建number_list_item.xml文件

// number_list_item.xml
<?
xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="16dp" > <TextView android:id="@+id/tv_item_number" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@style/TextAppearance.AppCompat.Title" android:textSize="42sp" android:fontFamily="monospace" /> </FrameLayout>

 

 

2. 添加 NumberViewHolder 类

class NumberViewHolder extends RecyclerView.ViewHolder {

        private TextView listItemNumberView;

        public NumberViewHolder(View itemView) {
            super(itemView);
            listItemNumberView = (TextView) itemView.findViewById(R.id.tv_item_number);

            void bind(int listIndex) {
                listItemNumberView.setText(String.valueOf(listIndex));
            }
        }
    }

 

 

练习三:Adapter 适配器

适配器要求我们重写三个函数:

onCreateViewHolder()  在RecylclerView 实例化一个新的ViewHolder实例时调用

onBindViewHolder() 在RecyclerView 想要让用户使用他时调用

getItemCount() 它返回数据源中的个数

 

过程:

当RecyclerView已经初始化后,他会首先询问Adapter将要显示的项目个数

然后RecyclerView会要求适配器创建ViewHolder对象 在这个过程调用 onCreateViewHolder() 使用相应的xml来绘制

onCreateViewHolder() 函数负责创建视图,在创建好每个viewHolder之后,RecyclerView将调用onBindViewHolder()来为每个项目填充数据

 

练习:创建Adapter

 

安卓开发笔记 RecycleView (三)

标签:idg   creat   ada   layout   list   get   weight   str   padding   

原文地址:http://www.cnblogs.com/elewei/p/7101055.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!