RecyclerView及自定义控件

https://www.jianshu.com/p/b4bb52cdbeb7

https://www.jianshu.com/p/8379ea2bc63b

https://www.jianshu.com/p/0bd4bc12c170

RecyclerView是Android一个更强大的控件,其不仅可以实现和ListView同样的效果,还有优化了ListView中的各种不足。其可以实现数据纵向滚动,也可以实现横向滚动(ListView做不到横向滚动)。接下来讲解RecyclerView的用法。

 

官宣:A flexible view for providing a limited window into a large data set。

RecyclerView是在Android5.0版本作为support-v7的一个组件出现,高效替代了最初的ListView等列表组件。使用上实现了视图代码解耦,功能上具备强大的item复用机制,并且提供默认多种LayoutMananger用来处理多种布局,本篇介绍RecyclerView重要组件基本使用

1、RecyclerView重要组件

  • LayoutManager :管理视图渲染、包含视图复用回收等功能。本身是一个抽象类,系统已经实现的子类有LinearLayoutManager、GridLayoutManager、StaggeredGridLayoutManager等。
  • Adapter: 适配器、数据和视图对接的桥梁。
  • ItemDecoration:装饰抽象类,常常用来实现列表的分割线或者实现悬浮等功能。
  • ItemAnimator:动效抽象类,常用定制item动画需求。

 

Adapter:继承自RecyclerView.Adapetr类,主要用来将数据和布局item进行绑定。
LayoutManager:布局管理器,设置每一项view在RecyclerView中的位置布局以及控件item view的显示或者隐藏。当View重用或者回收的时候,LayoutManger都会向Adapter来请求新的数据来进行替换原来数据的内容。这种回收重用的机制可以提供性能,避免创建很多的view或者是频繁的调用findViewById方法。这种机制和ListView还是很相似的。

 

自定义控件

 

通过在布局文件里引用自定义控件 com.example.uicustomviews.TitleLayout.  在类TitleLayout中 加载自定义的布局文件R.layout.title.如下:

LayoutInflater.from(context).inflate(R.layout.title, this);

 

可以看到,我们使用了<fragment>标签在布局中添加碎片,其中指定的大多数属性你都
是熟悉的,只不过这里还需要通过 android:name 属性来显式指明要添加的碎片类名,注意一
定要将类的包名也加上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值