RecyclerView介绍
Android 5.0 推出的View,同时Android也推出了 5.0以后的兼容库, 以供我们在Android 5.0 一下去使用它;大多数人的理解: ListView 的升级 版,这样理解是不对的,准确点说应该是 一款百变的AadapterView横竖都可以展示。
1. 不关心Item是否显示在正确位置,如何显示 ;
可以使用LayoutManager 类,控制显示风格,比如ListView风格,GridView风格横向竖向。
2. 不关心Item间如何分割 ;
可以使用ItemDecoretion 添加分割,如果需求仅仅是单背景色,可以在布局中使用marginTop完成。
3. 不关心Item增加与删除的动画效果;
可以使用 ItemAnimator实现Item之间的删除与增加的动画效果。
4. 仅仅关注如何回收与复用View ;
由此可见:它其实是一种插件式架构。
相关重要的类
1.RecyclerView.Adapter提供了一个Adapter不再使用Baseadapter;
2.ViewHolder强制开发者使用ViewHolder 模式;
3.LayoutManager 控制显示的风格;
4ItemAnimator显示内部Item增删的动画效果。
RecyclerView的用法
1. 普通ListView:mRercyclerView.setLayoutManager(new LinearLayoutManager(this));
2. 普通GridView:mRercyclerView.setLayoutManager(new GridLayoutManager(this,3));
3. 横向GridView:mRercyclerView.setLayoutManager(new StaggeredGridLayoutManager(5,StaggeredGridLayoutManager.HORIZONTAL));
4. 瀑布流:mRercyclerView.setLayoutManager(new StaggeredGridLayoutManager(3,StaggeredGridLayoutManager.VERTICAL));
5. 横向瀑布:mRercyclerView.setLayoutManager(new StaggeredGridLayoutManager(5, StaggeredGridLayoutManager.HORIZONTAL));
6. 定制Item 间隔效果,定制Item增删动画,使用DefaultItemAnimator。
上述 1. 2. 3. 4. 5 使用LayoutManager 完成。