android RecyclerView基本使用(上)
16lz
2021-01-26
最近在看谷歌新推出的Material Desigen(中文名材料设计,其实出来蛮久的了),今天来介绍下RecyclerView控件
下边是官方的介绍:
A flexible view for providing a limited window into a large data set.
What(什么是RecyclerView)
RecyclerView是谷歌新设计出来的一个控件主要功能与Listview一样用来展示一组列表数据,不同的是RecyclerView提供了ViewHolder模式进行实现,相比较Listview而言api变的更加简单。RecyclerView只负责item的复用,具体有两个核心功能:1.负责对子item view的回收复用2.提供了api让开发者自己管理子view的排列布局,官方提供了三种布局方式分别为 LinearLayoutManager(Listview显示) GridLayoutManager(网格显示) StaggeredGridLayoutManager(瀑布流)
HOW(如何使用)
1.导入RecyclerView类库
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.0.1' compile 'com.android.support:recyclerview-v7:23.0.1'}
2.在布局中添加RecyclerView控件
<android.support.v7.widget.RecyclerView android:id="@id/generalRecyclerView" android:layout_width="wrap_content" android:layout_height="match_parent" />
3.为RecyclerView添加适配器
1)创建RecyclerView.Adapter一个子类
2)创建RecyclerView.ViewHolder子类
下边看编码实现
adapter
@Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view=LayoutInflater.from(context).inflate(R.layout.recycler_item, parent, false); return new ItemViewHolder(view); } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { ItemViewHolder h = (ItemViewHolder) holder; h.initializeData(position); }
viewholder
public class ItemViewHolderextends RecyclerView.ViewHolder { public ItemViewHolder(View itemView) { super(itemView); } public void initializeData(int position){};}
绑定适配器
ListAdapter adapter = new ListAdapter(); mRecyclerView.setAdapter(adapter);
更多相关文章
- android开发积累2-实现自定义android控件
- ANDROID L——RecyclerView,CardView导入和使用
- Android(安卓)inflate的三种使用方法
- Android布局管理(4)
- android 之 Inflate
- Android(安卓)Appcompat样式使用自定义Dialog
- android shape的使用 自定义 控件形状
- Android(安卓)控件的触摸事件传递与处理
- Android(安卓)CoordinatorLayout使用 标题由图片变纯色