【android学习笔记】自定义Adapter继承BaseAdapter获取不到getview或者getview不执行的问题

转载 2013年12月04日 01:39:06

listView在开始绘制的时候,系统首先调用getCount()函数,根据他的返回值得到 listView的长度,然后根据这个长度,调用getView()逐一绘制每一行。如果你的 getCount()返回值是0的话,列表将不显示同样return 1,就只显示一行。系统显示列表时,首先实例化一个适配器(这里将实例化自定义的适配器)。当手动完成适配时,必须手动映射数据,这需要重写getView()方 法。系统在绘制列表的每一行的时候将调用此方法。getView()有三个参数,position表示将显示的是第几行,covertView是从布局文 件中inflate来的布局。我们用LayoutInflater的方法将定义好的item.xml文件提取成View实例用来显示。然后将xml文件中 的各个组件实例化(简单的findViewById()方法)。这样便可以将数据对应到各个组件上了。但是按钮为了响应点击事件,需要为它添加点击监听 器,这样就能捕获点击事件。至此一个自定义的listView就完成了,现在让我们回过头从新审视这个过程。系统要绘制ListView了,他首先获得要 绘制的这个列表的长度,然后开始绘制第一行,怎么绘制呢?调用getView()函数。在这个函数里面首先获得一个View(实际上是一个 ViewGroup),然后再实例并设置各个组件,显示之。好了,绘制完这一行了。那再绘制下一行,直到绘完为止。


估计你getCount()返回值是0

自动生成getCount时默认是:

[html] view plaincopy
  1. @Override  
  2.     public int getCount() {  
  3.         return 0;     
  4. }  


把返回值改为:

[java] view plaincopy
  1. @Override  
  2.     public int getCount() {  
  3.         return arraylist.size();  
  4.       
  5. }  

       即可

【android学习笔记】自定义Adapter继承BaseAdapter获取不到getview或者getview不执行的问题

listView在开始绘制的时候,系统首先调用getCount()函数,根据他的返回值得到 listView的长度,然后根据这个长度,调用getView()逐一绘制每一行。如果你的 getCount(...

Android实现ListView过滤功能之继承BaseAdapter进阶版

Android实现ListView过滤功能之继承BaseAdapter进阶版 实现ListView过滤功能最方便的便是使用ArrayAdapter,里面自带的getFilter()方法能很方便的实...

android自定义Adapter中getView()三种写法及其效率问题。

android中常常需要我们自定义Adapter,甚至经常建一个包专门放各种自定义adapter类。常见的有ListView继承自BaseAdapter的adapter、ExpandableListV...

自定义Adapter开发中没有回调getView()的问题

适配器(Adapter)是安卓开发中经常用到的一类工具,它为我们的后端数据与前端显示提供了良好的接口,常见的适配器view有:ListView、GridView等。今天在开发自定义Adapter的时候...
  • WTBEE
  • WTBEE
  • 2013年10月28日 21:15
  • 1080

android自定义接口,然后在activity中实现点击监听,调用getView解决滑动错位的问题

android自定义接口,然后在activity中实现点击监听刷新,调用getView利用ArrayMap记录状态,解决滑动错位的问题...

自定义Adapter中getView( )中使用View.setTag()和不使用的区别。

首先来看使用Tag的情况。 @Override public View getView(int position, View view, ViewGroup group) { ViewHolde...

关于ListView中继承BaseAdapter重写getview的显示重复数据或报转换错误的问题

关于ListView中继承BaseAdapter重写getview的显示重复数据或报转换错误的问题本人安卓小白, 写一个基于listview的 上拉刷新 下拉加载的功能 中遇到的很多问题其中 一个重...

android listView 重写Adapter方法getView的性能优化问题

1.为什么要重写Adapter 的getView方法      为什么要重写getView方法 可以看这里   android listView滚动时checkBox的状态不会保存的问题    2.在...
  • dxswzj
  • dxswzj
  • 2013年08月31日 00:47
  • 10381

自定义Adapter(一般继承自BaseAdapter)时遇见的一个小问题

出处:www.csdn.net 看一下我之前写的那篇文章GridView,ImageAdapter2的getView()方法,我让大家过来看看的。 那样写肯定是正确的,但是一开始学的时...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【android学习笔记】自定义Adapter继承BaseAdapter获取不到getview或者getview不执行的问题
举报原因:
原因补充:

(最多只允许输入30个字)