前言我们每一个Android开发人员对ListView的使用肯定是很熟悉的,然而多少人能真正的懂ListView的缓存机制呢,说白了就是ListView为了提高效率,而内部实现的一种优化,牺牲一点内存。而这种优化就需要复用ItemView(也就是item对应的View).那么下面楼主来对ListView和RecyclerView的item复用问题做一个深入的讲解先来一张大家学习的时候都遇到过的图看不懂也没啥事,可以接着往下看,先有一个直观的认识首先来解答几个问题1.ListView为什么会存在Item复用问题答:ListView内部为了优化而建立的复用机制,在下面方法中第二个参数就是ListView传递给你,让你进行复用的View.如果你不想复用listview传递给你的View,那你每次都需要创建一个新的View进行返回,这样子是肯定不会出现复用问题的,但是性能却是很消耗的。publicViewgetView(intposion, View itemView, ViewGroup viewGroup){returnnull;}2.为什么上述的getView方法中第二个参数有时候为null呢因为ListView默认缓存一页的View,什么叫一页,也就是你当前listview界面上有几个Item可以显示,listview就缓存几个.当现实第一页的时候,由于没有一个Item被创建,所以
...
继续阅读
(37)