HeaderViewListAdapter cannot be cast to listAdapter问题原因及解决办法
[o]
在listView中添加leaderView 和footerView的时候要注意在setAdapter之前调用,不然会报如下异常:
listAdapter cannot be cast to android.widget.HeaderViewListAdapter
此时,listView的表头表尾已作为第一项和最后一项加入listView,可以正常显示及随条目上下滚动。
但在操作该表listItem的时候会报如下错误:
java.lang.ClassCastException: android.widget.HeaderViewListAdapter cannot be cast to [package_name].listAdapter
会发现该错误与上述错误描述刚好相反,其实它们本质上是同一个问题。上一个是在setAdapter之前要set表头表尾,而此时要调用listAdapter,但因为表头表为加入后该adapter被封装成为HeaderViewListAdapter
那么要如何取到原来的Adapter呢?
只需将
MyAdapter myadapter = ( MyAdapter) listview.getAdapter();
改为
HeaderViewListAdapter hAdapter = (HeaderViewListAdapter) listview.getAdapter();
MyAdapter myadapter = ( MyAdapter) hAdapter.getWrappedAdapter();
由此也可以明确,当增加header或者footer时,lv_data.getAdapter()).getWrappedAdapter().getCount()与 ((HeaderViewListAdapter)listview.getAdapter()).getWrappedAdapter().getCount() 是相差1的,在调用时需要注意。
HeaderViewListAdapter cannot be cast to listAdapter问题原因及解决办法的更多相关文章
- jquery ajax success 函数 异步调用方法中不能给全局变量赋值的原因及解决办法
jquery ajax success 函数 异步调用方法中不能给全局变量赋值的原因及解决办法 在调用一个jquery的ajax方法时我们有时会需要该方法返回一个值或者给某个全局变量赋值,可是我们 ...
- 各种编码问题产生原因以及解决办法---------响应编码,请求编码,URL编码
响应编码 产生原因以及解决办法: 示例: package cn.yzu; import java.io.IOException; import javax.servlet.ServletExcept ...
- .Net内存泄露原因及解决办法
.Net内存泄露原因及解决办法 1. 什么是.Net内存泄露 (1).NET 应用程序中的内存 您大概已经知道,.NET 应用程序中要使用多种类型的内存,包括:堆栈.非托管堆和托管堆.这里我们需 ...
- Oracle死锁产生的原因和解决办法
如果有两个会话,每个会话都持有另一个会话想要的资源,此时就会发生死锁.用下面实验来说明死锁的产生原因和解决办法.SESSION1:SQL> create table t2 as select * ...
- HttpClient的CircularRedirectException异常原因及解决办法
HttpClient的CircularRedirectException异常原因及解决办法 这两天在使用我自己爬虫抓取网页的时候总是出现 org.apache.http.client.ClientPr ...
- php_curl.dll libssh2.dll 始终无法加载的原因 及解决办法
在StackOverflow得到最终原因及解决办法 http://stackoverflow.com/questions/16424117/php-unable-to-load-php-curl-dl ...
- mysql保存中文乱码的原因和解决办法
当你遇到这个mysql保存中文乱码问题的时候,期待找到mysql保存中文乱码的原因和解决办法这样一篇能解决问题的文章是多么激动人心. 也许30%的程序员会选择自己百度,结果发现网友已经贴了很多类 ...
- eclipse中tomcat发布失败(Could not delete May be locked by another process)原因及解决办法
在eclipse中tomcat发布项目时,偶尔出现了以下情况: publishing to tomcat v7.0 services at localhost has encountered a pr ...
- [转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法
[转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法 http://blog.csdn.net/sahuso ...
随机推荐
- Android开发视频学习(1)
S01E02_搭建Android开发环境 设置ANDROID_SDK_HOME环境变量,用于指定Android模拟器的目录,官方文档没有说要设置. S01E03_Android创世纪 Android根 ...
- wpa_supplicant 与iwpriv工具配置WIFI的命令
=====================================================hostapd 配置命令=================================== ...
- MVVM中轻松实现Command绑定(三)任意事件的Command
WPF中不是所有的控件都有Command属性的,如果窗体我需要在ViewModel中处理Loaded事件命令,或者其他事件的命令时,很难都过绑定Command完成,必须要注册依赖属性或事件等,太麻烦了 ...
- Appium 小白从零安装 ,Appium连接真机测试。
以下是我个人在初次安装使用Appium时的过程,过程中遇到了一些问题,在这里也一一给出解决办法. Appium安装过程 先安装了 Node.js.在node的官网上下载的exe安装文件. 在node的 ...
- 查询显示MSSQL表结构 [转]
SELECT 表名 = Case When A.colorder= Then D.name Else '' End, 表说明 = Case When A.colorder= Then isnull(F ...
- HW3.5
import java.util.Scanner; public class Solution { public static void main(String[] args) { int n1 = ...
- POJ2229 - Sumsets(完全背包)
题目大意 给定一个数N,问由不同的2的幂之和能组成N的方法有多少种 题解 看完题目立马想到完全背包...敲完代码上去超时了....后来发现是%的原因...改成减法就A了...%也太他妈耗时了吧!!!( ...
- Powerdesigner设置表结构对齐方式
- flot中文说明文档 简版
Flot参考文档: 一.对绘图函数plot的调用:var plot=$.plot(placeholder,data,options) ----------- placeholder --------- ...
- mysql繁字体报错,Incorrect string value: '\xE9_' for column 'UserName' at row 1
mysql 插入繁体字的时候报错,然后网上找了,说是mysql的库设置为character-set = utf8mb4 结果设置还是没效果 搞了好几天都不知道什么原因,然后今天想了想,好像之前有个学长 ...