ListView addHeaderView()addFooterView()和变更列表
Posted pravez
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ListView addHeaderView()addFooterView()和变更列表相关的知识,希望对你有一定的参考价值。
addHeaderView()、addFooterView()
addHeaderView()和addFooterView()是用于在给ListView设置Adapter之前在列表中添加或删除一些元素。
主要有以下几点注意事项:
- 两个方法必须在setAdapter()之前调用。如果之前调用过addHeaderView()或addFooterView(),在setAdapter(A)时,真正设置的是另一个adapter B,把之前预添加的元素和A中的元素统一由B来管理。
- 多次调用addHeaderView(),后插入的位于先插入的之后,因此,属于尾插法。addFooterView()同理。
- 在头部添加的元素会把原来A中的元素向后挤,即使用addHeaderView()添加两个元素后,原来位于Adapter A中position = 0的元素,现在的position可能是2了。
变更列表项
已经展示的列表需要变更(添加、删除等)时,要对其数据源做添加/删除,然后对适配器调用notifyDataSetChanged()方法让适配器进行刷新列表。
以上是关于ListView addHeaderView()addFooterView()和变更列表的主要内容,如果未能解决你的问题,请参考以下文章
调用 ListView.addHeaderView() 时出现 ClassCastException?
从源码上分析ListView的addHeaderView和setAdapter的调用顺序
我ListView里面使用了mListView.addHeaderView(rollView);方法添加了图片滑动的效果。请问这效果为什么啊?
RecyclerView更通用——listView的onItemClick,onLongItemClick,addHeaderView,addFooterView