1.ListView是什么?如何使用?
2.RecyclerView是什么?如何使用?如何返回不一样的Item。
关键方法:onCreateViewHolder 和 getItemViewType。
3.ListView和RecyclerView的区别是什么?
RecyclerView更具灵活性可自定义设置layoutmanager,itemanimator,itemdivider
4.分别讲讲你对ListView & RecyclerView的优化经验。
使用Constrainlayotu介绍布局层级
可以的话设置,设置RecyclerView等高,然后设置setHasFixedSize(true),避免重绘Item时重新测量宽高。
根据需求修改RecyclerView默认的缓存选项
1
2
3recyclerView.setItemViewCacheSize(20);
recyclerView.setDrawingCacheEnabled(true);
recyclerView.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH);onBindViewHolder减少View重复创建,逻辑判断,临时变量创建,复用事件监听而不是重复创建事件监听器,ViewHolder中通过SparseArray保存view引用。
避免刷新整个列表notifyItemRange、notifyItemInsert。
5.给我说说RecyclerView的回收复用机制。
CacheView ViewPool
6.说说你是如何给ListView & RecyclerView加上拉刷新 & 下拉加载更多机制。
7.谈谈你是如何对ListView & RecycleView进行局部刷新的?
8.谈谈如何进行分页加载?
9.ScrollView下嵌套一个ListView通常会出现什么问题?
10.一个ListView或者一个RecyclerView在显示新闻数据的时候,出现图片错位,可能的原因有哪些 & 如何解决?