Android部分-11:ListView和RecyclerView

1.ListView是什么?如何使用?

注意ViewHolder复用机制。

2.RecyclerView是什么?如何使用?如何返回不一样的Item。

关键方法:onCreateViewHolder 和 getItemViewType。

3.ListView和RecyclerView的区别是什么?

RecyclerView更具灵活性可自定义设置layoutmanager,itemanimator,itemdivider

4.分别讲讲你对ListView & RecyclerView的优化经验。

  • 使用Constrainlayotu介绍布局层级

  • 可以的话设置,设置RecyclerView等高,然后设置setHasFixedSize(true),避免重绘Item时重新测量宽高。

  • 根据需求修改RecyclerView默认的缓存选项

    1
    2
    3
    recyclerView.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在显示新闻数据的时候,出现图片错位,可能的原因有哪些 & 如何解决?

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×