listView.removeFooterView(View)报空指针 ...
2012-09-27 10:41
141 查看
我们通常在加载数据时,为了省流量不会一次性把数据全部下完,一般是分段下载。分段下载一般会在listview最后面放一个进度条表示正在加载数据,当数据加载完时,我们又要清除它。这时候就要注意了。
mLoadingLayout = (FrameLayout) View.inflate(this, R.layout.load, null);
listView.addFooterView(mLoadingLayout);
listView.requestFocus();
这是listview尾部添加一个进度条。
listView.removeFooterView(mLoadingLayout);
这是移除尾部的进度条。
有时候在移除时回报空指针,但listview不为null ,mLoadingLayout也不为null,但还是报空指针,原因是因为listview要分为三部分。一是头部,二是中间部,三是尾部。在设置了头部或尾部时,必须要有中间部才能真正意义上的生效。没生效就去移除就会报空指针错误。
所以在
listView.removeFooterView(mLoadingLayout);时
必须先调用 listView.setAdapter(adapter);(设置中间部)
adapter可以数据可以为0但不可为null
mLoadingLayout = (FrameLayout) View.inflate(this, R.layout.load, null);
listView.addFooterView(mLoadingLayout);
listView.requestFocus();
这是listview尾部添加一个进度条。
listView.removeFooterView(mLoadingLayout);
这是移除尾部的进度条。
有时候在移除时回报空指针,但listview不为null ,mLoadingLayout也不为null,但还是报空指针,原因是因为listview要分为三部分。一是头部,二是中间部,三是尾部。在设置了头部或尾部时,必须要有中间部才能真正意义上的生效。没生效就去移除就会报空指针错误。
所以在
listView.removeFooterView(mLoadingLayout);时
必须先调用 listView.setAdapter(adapter);(设置中间部)
adapter可以数据可以为0但不可为null
相关文章推荐
- android listview footerview和headerview 问题调查
- android ListView隐藏FooterView(headerView)
- 解决ListView 跟ScroolView 共存 listItem.measure(0, 0) 空指针
- 解决ListView 跟ScroolView 共存 listItem.measure(0, 0) 空指针
- listView.removeFooterView(View)报空指针的奇异问题
- Android ListView 和ScroolView 出现onmeasure空指针的解决办法
- ListView如何动态显示与隐藏headerview,footerview
- ListView开发笔记之添加HeaderView和FooterView
- 对于Listview未满一屏添加footerView 满了一屏幕将View固定在屏幕下方的解决方案
- Android 编程下 ListView 的 HeaderView 和 FooterView 不可选择点击
- ListView的headerView和footerView
- ListView中 item footerview headerview 的布局 事件监听等问题的收集整理
- android ListView隐藏FooterView(headerView)
- 解决ListView 和ScroolView 共存 listItem.measure(0, 0) 空指针
- 解决ListView 跟ScroolView 共存 listItem.measure(0, 0) 空指针
- LIstView的HeaderView, FooterView
- Android ListView HeaderView和FooterView引出的Position问题
- Android开发 使ListView的HeaderView和FooterView不可选择点击
- 【Android】ListView convertView.getTag() 空指针
- 解决ListView 跟ScroolView 共存 listItem.measure(0, 0) 空指针