| 区别 | ListView | RecyclerView | 说明 |
|---|---|---|---|
| Adapter | 需继承BaseAdapter
|
需继承RecyclerView.Adapter
|
- |
| ViewHolder | 自定义 | 需继承RecyclerView.ViewHolder
|
RecyclerView编写更加规范化;且RecyclerView自己复用item,ListView需自己优化(判断convertView是否为null等) |
| LayoutManager | 无 | 有 | 布局效果多样化,ListView布局比较单一,只有纵向效果。RecyclerView布局效果丰富。 |
| 空数据处理 |
setEmptyView() 方法 |
无 | |
| HeaderView 与 FooterView |
addHeaderView() 与 addFooterView()
|
无,可通过ViewHolder的Type自己实现 |
|
| 局部刷新 |
notifyDataSetChanged() 全局刷新 |
notifyItemChanged() |
|
| 动画效果 | 无 |
Adapter中可自己实现动画效果 |
|
| ItemTouchHelper | onItemClickListener() |
需要通过addOnItemTouchListener()方法自己实现 |
|
| 嵌套滑动机制 | 无 | 有 |
总结的比较简单,详细请查看原文。
转自:ListView 与 RecyclerView 简单对比











网友评论