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 完成。