喵宅苑 MewoGarden × 技术宅社区II | Z站 Z Station 来喵宅苑,有可爱的男孩子

正文

android组件 RecyclerView使用教程 第一发:基础使用

作者:玩不坏的小黑
[i=s] 本帖最后由 玩不坏的小黑 于 2016-5-10 10:25 编辑
RecyclerView使用教程
前两个星期用到只学习了使用方法,没完全理解,这次用就做个教程用于学习
第一步:
引用Recyclerview 包
在gradle文件里面添加
<span style="line-height: 1.5; background-color: rgb(255, 255, 255);">dependencies {</span> <span style="line-height: 1.5; background-color: rgb(255, 255, 255);"> compile'com.android.support:recyclerview-v7:23.1.1'</span> <span style="line-height: 1.5; background-color: rgb(255, 255, 255);">}</span>
第二步:
在XMl里面添加Recyclerview
<android.support.v7.widget.RecyclerView android:id="@+id/recyclerview" android:layout_width="match_parent" android:layout_height="match_parent"> </android.support.v7.widget.RecyclerView>
第三步:在activity里面findViewById()
recyclerView.findViewById(R.id.recyclerview);
第四步:设置布局管理器,布局管理器待会再详细研究
recyclerView.setLayoutManager(new LinearLayoutManager(this));
第五步:新建一个适配器
package com.xiaohei.recyclerview; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.TextView; import java.util.ArrayList; import java.util.List; /** * Created by xiaohei on 2016/5/5. */ public class RecyclerviewAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> { List<String> Items; public RecyclerviewAdapter() { Items = new ArrayList<>(); for(int i = 0 ; i<100;i++){ Items.add("小黑 " + i); } } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recyclerview_item,null); RecyclerView.ViewHolder holder= new xiaoheiHolder(view); return holder; } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { xiaoheiHolder XHolder = (xiaoheiHolder) holder; XHolder.mTextView.setText(Items.get(position)); } @Override public int getItemCount() { return Items.size(); } class xiaoheiHolder extends RecyclerView.ViewHolder{ TextView mTextView; public xiaoheiHolder(View itemView) { super(itemView); mTextView = (TextView) itemView.findViewById(R.id.item_id); } } }
recyclerview的适配器流程是这样的
首先:getCount 获取到元素个数
然后创建view
{
创建view的时候要用parent获取到item的view,然后new一个Holder
item的view要写一个新的layout文件
@Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recyclerview_item,null); RecyclerView.ViewHolder holder= new xiaoheiHolder(view); return holder; }
然后return holder
}
然后再绑定
{
绑定的时候就是填充数据
第六步:在activity里面给recyclerview设置适配器
recyclerView.setAdapter(new RecyclerviewAdapter());
然后运行就可以看到这个界面:[attach]455975[/attach] 基础部分就先记这么多 recyclerview的灵活性远不止这样 找时间记录下布局管理器和然后还有一个ViewType的使用

回复

0%
站点地图友情链接:
喵宅苑
喵空间社区程序
喵宅苑 静态版
宅喵RPG地图编辑器
络合兔
喵宅苑预览版
Lanzainc
技术宅
小五四博客
莉可POI
Mithril.js
枫の主题社
Project1
午后少年
机智库
七濑胡桃
xiuno
幻想の日常
魂研社
Nothentai
0xffff
欲望之花
泽泽社长
淀粉月刊
HAYOU
红客联盟
异次元
轻之国度
神奇宝贝新生代
游戏狗
口袋双子星
我的世界论坛
梦次元
动漫东东
动漫国际
精艺论坛
78动漫
吐槽弹幕网
漫客栈
nexmoe