关于listview的自定义adapter不执行getview()方法的几种情况和解决办法
来源:互联网 发布:淘宝代销怎么找到上家 编辑:程序博客网 时间:2024/05/21 12:45
listview是一个比较常用的控件,为了适应自己需要的效果往往会继承baseadapter去实现自定义的适配器。
在该适配器中出错最多的应该是getview()了。
从接触listview控件开始,第一个报的错就是关于getview()的。昨天有人问了我一个同样是不执行getview()的问题,所以我觉得有必要去写一篇博文记录一下。算是自己学习总结了。
第一、没有执行getview往往是因为没有显示页面。
这个时候,我们首先要保证确实有有效的数据传到了自定义的适配器里。因为如果getcount()的返回值是0的话,getview是不会被执行的。
第二、要确认adapter在核实的时间和位置去实例化,比如说在异步任务的onPostExecute()方法中去实例化adapter的话,甚至会导致该方法也不会被执行到,当然getview更执行不到了。
第三、布局的问题。在xml文件中,有些属性会极大的影响到getview的执行。他执行的前提是,他有空间去展示。
当你将listview设置为gone的时候,他是不会去执行这个方法的。在适配数据前将他改为可见就好了。
另外一个就是昨天晚上朋友遇到的那个问题。将父布局设置成android:layout_height="wrap_content",因为页面的测量是在oncreate的时候被测量的。而此时里面是没有内容的,也就是高度为0,在数据加载好之后,父布局并没有重新测量,而只是listview重新测量了,但是因为listview此时的高度是0,所以getview()还是无法被执行到。将android:layout_height="wrap_content"改成android:layout_height="match_parent"就好了
这个是我遇到的一些问题和解决方案。有什么问题的话,请各位大神指导。
- 关于listview的自定义adapter不执行getview()方法的几种情况和解决办法
- listview的自定义adapter不执行getview()分析
- Android自定义ListView或GridView适配器Adapter的getView方法不执行的问题
- ListView和GridView 自定义Adapter的getView()方法调用问题
- listview的getView方法不执行
- listView的getView()方法不执行
- ListView无法执行getView()的几种可能问题
- 【android学习笔记】自定义Adapter继承BaseAdapter获取不到getview或者getview不执行的问题
- 【android学习笔记】自定义Adapter继承BaseAdapter获取不到getview或者getview不执行的问题
- 【android学习笔记】自定义Adapter继承BaseAdapter获取不到getview或者getview不执行的问题
- android ListView getView方法重复执行的解决办法
- 自定义Adapter的getView方法的含义
- android ListView 和Adapter 结合,但是不调用getView()方法??
- listview 自定义 adapter getview()执行多次 或 N 次的问题
- android --activity 中的控件设置侦听(onclickListener)无效,自定义adapter不执行getView 方法
- 关于Adapter中getView的重写方法
- Adapter的getView方法
- 重写ListView的Adapter时,getView()方法没有执行的原因
- 停车位分析
- android自定义之可滚动的TextView
- hdu 2845 Beans 最大不连续字段和
- 微信公众号申请流程和注意事项
- Android 定位之百度地图定位 问题总结
- 关于listview的自定义adapter不执行getview()方法的几种情况和解决办法
- C++句柄类
- JavaScript权威指南_90_第13章_Web浏览器中的JavaScript_13.0-概述
- Linux 中创建和解压文档 tar 命令
- lua 时间操作举例
- Vi/Vim编辑器常用命令
- LightOJ 1422 Halloween Costumes (区间dp 好题)
- ehcache memcache redis 三大缓存男高音
- JavaScript权威指南_91_第13章_Web浏览器中的JavaScript_13.1-客户端JavaScript