ListView addHeaderView()addFooterView()和变更列表

Posted pravez

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ListView addHeaderView()addFooterView()和变更列表相关的知识,希望对你有一定的参考价值。

addHeaderView()、addFooterView()

addHeaderView()和addFooterView()是用于在给ListView设置Adapter之前在列表中添加或删除一些元素。
主要有以下几点注意事项:

  1. 两个方法必须在setAdapter()之前调用。如果之前调用过addHeaderView()或addFooterView(),在setAdapter(A)时,真正设置的是另一个adapter B,把之前预添加的元素和A中的元素统一由B来管理。
  2. 多次调用addHeaderView(),后插入的位于先插入的之后,因此,属于尾插法。addFooterView()同理。
  3. 在头部添加的元素会把原来A中的元素向后挤,即使用addHeaderView()添加两个元素后,原来位于Adapter A中position = 0的元素,现在的position可能是2了。

变更列表项

已经展示的列表需要变更(添加、删除等)时,要对其数据源做添加/删除,然后对适配器调用notifyDataSetChanged()方法让适配器进行刷新列表。

以上是关于ListView addHeaderView()addFooterView()和变更列表的主要内容,如果未能解决你的问题,请参考以下文章

调用 ListView.addHeaderView() 时出现 ClassCastException?

从源码上分析ListView的addHeaderView和setAdapter的调用顺序

我ListView里面使用了mListView.addHeaderView(rollView);方法添加了图片滑动的效果。请问这效果为什么啊?

ListView addHeaderView

RecyclerView更通用——listView的onItemClick,onLongItemClick,addHeaderView,addFooterView

求助,如何在listview里addheadview-Android开发问答