Android

RecycleView原理

2019-10-24  本文已影响0人  大佬的上半生
RecyCleView是什么?

ListView的局限

View Holder是什么?

ListVie的缓存机制

RecycleBin有两个缓存,一个是ActiveView活跃的View,ScrapView一个废弃移出屏幕的View,如果两个都没取到才创建一个View


image.png

Android滑动的时候会把每个View重新刷新一次,则用ActiveView缓存,ScrapView移出了屏幕,如果找到则重新绑定数据


image.png

RecycleView缓存原理

1.RecycleView Scap对应ListView 的ActiveView
Cache对应ListView的Scap

image.png

RecyClerView的性能优化策略

场景:如果Adapter的数据变换不会导致 recycleview的大小变化——>RecyclerView.setHasFixedSize(true)才会有效果

多个RecyClerView公用RecycledViewPool

在列表很大的时候异步计算diff

image.png

为什么使用ItemDecoration可以绘制分割线

image.png
image.png

ItemDecorAtion(装饰显示的Item)还可以做啥?

某个item的高亮
分类
实现解耦


image.png
上一篇 下一篇

猜你喜欢

热点阅读