Android ListView HeaderView和FooterView引出的Position问题
2013-04-22 21:33
513 查看
在ListView中getView返回的position是包含HeaderView 和 FooterView。并不是从除去HeaderView以外第一个Item 为Position = 0的所以使用这个位置的时候都需要考虑到造成偏移,FooterView存在同样的问题。
什么情况下会出现问题,即位置偏移问题?
可以分析下HeaderViewListAdapter,从中查看下原因
其中getCount返回的是包含HeaderView和FooterView。
其他几个方法中的position都排除了HeaderView和FooterView。
除去这几个方法,其他跟位置有关的方法都会直接包含HeaderView和FooterView
例如:getFirstVisible() getLastVisible没有被覆写,所以这两个方法是从HeaderView第一个view算作position = 0
参考资料:
Header, Footer位置偏移
http://blog.chengbo.net/2012/03/09/onitemclick-return-wrong-position-when-listview-has-headerview.html
什么情况下会出现问题,即位置偏移问题?
可以分析下HeaderViewListAdapter,从中查看下原因
getCount getItem getItemId getView getItemViewType
其中getCount返回的是包含HeaderView和FooterView。
其他几个方法中的position都排除了HeaderView和FooterView。
除去这几个方法,其他跟位置有关的方法都会直接包含HeaderView和FooterView
例如:getFirstVisible() getLastVisible没有被覆写,所以这两个方法是从HeaderView第一个view算作position = 0
参考资料:
Header, Footer位置偏移
http://blog.chengbo.net/2012/03/09/onitemclick-return-wrong-position-when-listview-has-headerview.html
相关文章推荐
- android listview footerview和headerview 问题调查
- Android 编程下 ListView 的 HeaderView 和 FooterView 不可选择点击
- ListView关于添加HeaderView,FooterView的小问题
- Listview添加完HeaderView或者FooterView后,点击相应的view出现IndexOutOfBoundsException问题修复
- Android_ListView_有Header或Footer时onItemClick里的position的问题
- android ListView 添加 HeaderView 和 FooterView时 不可选择点击
- Android ListView隐藏FooterView(headerView)
- Android ListView添加了HeaderView后,出现点击HeaderView区域跳转的问题
- Android_ListView_有Header或Footer时onItemClick里的position的问题
- Android Listview多次调用相同的addHeaderView和addFooterView 问题
- android如何让listView加入的HeaderView或FooterView不可点击
- Android 去掉ListView的HeaderView、FooterView的Divider分割线
- android ListView隐藏FooterView(headerView)
- XRecyclerView的使用&ListView|XRecyclerView有header时Position不对问题
- Android开发 使ListView的HeaderView和FooterView不可选择点击
- 从源码看ListView有HeaderView时onItemClick里的position错位的问题
- 解决自定义RefrePullListview加入HeaderView占去position=0的问题
- ListView中 item footerview headerview 的布局 事件监听等问题的收集整理
- android ListView addHeaderView问题
- Android兼容性问题 -- ListView.addHeaderView()异常