Android 学习笔记(十一):ListView和RecycleView的学习

ListView

ListView是一个列表控件,需要搭配Adapter使用。通过自定义一个Adapter,继承自BaseAdapter,然后在adapter中完成数据的绑定,最后通过ListVIew.setAdapter()方法将listViewadapter绑定起来。
ListView可以添加表头和表尾,

  • addHeaderView(View v):添加headView(表头),括号中的参数是一个View对象
  • addFooterView(View v):添加footerView(表尾),括号中的参数是一个View对象
  • addHeaderView(headView, null, false):和前面的区别:设置Header是否可以被选中
  • addFooterView(View,view,false):同上

设置ListView

ListView设置只需要一个属性,就是适配器Adapter。适配器中通过getview()方法获取每一行需要的item

RecyclerView

RecyclerViewAndroid5.0之后谷歌推出的一个新控件,用来代替ListView,更加灵活和强大。使用RecyclerView的时候必须制定一个适配器Adapter和一个布局管理器LayoutManager。适配器继承自RecyclerView.Adapter类,具体实现类似于ListView的适配器。布局管理器用于确定RecyclerViewItem的展示方式以及决定何时复用已经不可见的Item,避免重复创建以及执行高成本的findViewById()方法。

设置RecyclerView

RecyclerView可以设置四个属性

  • LayoutManager(布局管理器,必选)
  • Adapter(适配器,必选)
  • ItemDecoration(每个Item之间的间隙,默认为空,非必选)
  • ItemAnimator(添加删除Item的动画,默认WeirDefaultItemAnimator,非必选)

三种布局管理器

RecyclerView能够实现各种各样的布局效果,核心在于LayoutManager,除了这三种以外,如果想实现自定义效果,可以自定义布局管理器,继承自LayoutManager,实现相应的方法。

  • LinerLayoutManager 以垂直或者水平列表方式展示Item

  • GridLayoutManager 以网格方式展示Item

  • StaggeredGridLayoutManager 以瀑布流方式展示Item

总结

  1. 在一些场景下,ListView和RecyclerView的效果没有太大区别,两者都能很好的工作。
  2. ListView比RecyclerView实现要简单一些,ListView比较简单和快捷,RecyclerView暴露了更多的接口,所以更加的完善和强大灵活。
发布了167 篇原创文章 · 获赞 230 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/qq_39240270/article/details/99487013