android横向瀑布,使用RecyclerView实现简单的横向滑动

最近在Android群里面,看到挺多人都在用RecyclerView。好奇的我也去看了看如何使用。做了个小Demo,虽然知道RecyClerView 的文章已经烂大街了。但是想写篇文章总结一下(毕竟自己写的是自己的,别人写的是别人的)。

介绍:  RecyclerView 不仅可以轻松实现 Listview 同样的效果 并且还能轻松实现 (瀑布,横向滑动) 效果。 并且Android 开发团队,将RecyclerView 定义在了 Support  库当中,所以如果你想使用RecyclerView 的话就必须先导入 相应的依赖库。

1. 编写xml代码以及加入依赖

(1).先导入最重要的 "依赖" !compile'com.android.support:recyclerview-v7:25.1.0'

(2).写好RecyclerView的xml布局

b82c407c9056?_wv=5

Activity_RecyclerView_xml

(3). 俺们再写好RecyclerView的 Item 的 xml布局

b82c407c9056?_wv=5

Activity_RecyclerView_Item_xml

2.ok 俺们已经把最基础的xml文件代码已经完成现在开始编写java代码把!

(2.1)  编写MainActivity.java

使用介绍:(2.1.1)如果你想实现 RecyClerView 横向滑动功能只需要,使用 RecyClerView的线性布局管理器 LinearLayoutManager,方法调用 setOrientation(), 来控制使用什么样的布局样式,如果你想实现横向滑动的话就使用 setOrientation(LinearLayoutManager.HORIZONTAL);。

在setOrientation的方法中有3种布局样式分别是:

(1)  HORIZONTAL 最常使用的横向布局

(2) VERTICAL 跟ListView一致的竖向布局

(3)  INVALID_OFFSET 偏移布局

并且在LinearLayoutManager 线性布局管理器(自己的理解)之外 RecyclerView还存在了GridLayoutManager 网格布局管理器 和

StaggerredGridLayoutManager  瀑布流布局管理器。可以使用他们实现不同的布局样式哦。

现在我们设置好一个布局样式后再使用 setLayoutManager 把设置好的布局样式添加到 RecyClerView中然后在调用适配器,添再在把返回的数据,添加到RecyClerView就完成啦,废话不多说直接开始撸代码吧!

下方是Activity.java代码↓@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.recycleview);

recy=(RecyclerView)findViewById(R.id.reyview);

getData();  //获取 RecyClerView 适配器 需要的数据

initData();  // 加载数据的方法

}

private voidgetData() {//虚拟数据

datadatas=null;

for(inti=0;i<=10;i++) {

datas=newdata();

datas.setId(i);

list.add(datas);

}

}

private voidinitData() {

//     LinearLayoutMannager 是一个布局排列 , 管理的接口,子类都都需要按照接口的规范来实现。

LinearLayoutManager ms= new LinearLayoutManager(this);

ms.setOrientation(LinearLayoutManager.HORIZONTAL);// 设置 recyclerview 布局方式为横向布局

//     LinearLayoutManager 种 含有3 种布局样式  第一个就是最常用的 1.横向 , 2. 竖向,3.偏移

recy.setLayoutManager(ms);  //给RecyClerView 添加设置好的布局样式

orAdapter oap=new orAdapter(list);  //初始化适配器

recy.setAdapter(oap);  // 对 recyclerview 添加数据内容

}

适配器介绍:

RecyClerView 的适配器 和 ListView 的适配器还是很相识的,但是和ListView的适配器简洁了许多。由于RecyclerView 的适配器继承与 RecyclerView.Adapter 方法 所以我们必须重写 3个方法,并且需要指定泛型为  orAdapter.ViewHolder (orAdapter为自己的类名)。其中ViewHodler是我们在orAdapter 定义的一个内部类。(个人感觉很像把BaseAdatper的getView分成了2个部分)。适配器中所有方法

1.onCreateViewHoder;  为ViewHodler 赋予一个xml 界面

2.onBindViewHolder;  用来给控件赋值

3.getItemCount ;  让我们知道RecyclerView 一共有多少个子项.

4.orViewHolder ViewHolder 内部类

适配器代码:

b82c407c9056?_wv=5

RecyclerView_Adapter

到这里就完事儿拉,是不是觉得很简单。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值