首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

android学习笔记----ListView和各种适配器简介

mAdapter(ListAdapter接口引用),这个mAdapter已经用new myAdapter()实例化了,那么到底什么时候调用getView呢?...,MyAdapter里面的getView错误:  java.lang.UnsupportedOperationException:  addView(View, LayoutParams) is...ArrayAdapter具有说明来告诉它自己如何创建列表项视图,并返回给ListView,当屏幕被占满后 ListView 将停止向ArrayAdapter 寻求更多列表项,列表项视图仅在需要时才创建...,当视图被滚动离开屏幕后,它们就会被添加到Scrap Pile,比如前两个列表项不再可见,它们将进入 Scrap Pile,然后当我们请求新列表项时,我们可以通过将这些视图返回到 ArrayAdapter...getView方法有一个convertView参数,这个参数用于将之前加载好布局进行缓存,以便于之后可以重用。 接着我们新增一个内部类ViewHolder,用于对控件实例进行缓存。

2.1K10

2014-10-27Android学习------布局处理(八)------自定义ListView监听事件和Adapter实现-----城市列表应用程序

,getItem,getItemId,最后一个最重要getViewgetView函数为什么重要呢?...因为它是用来刷新它所在ListView。它在什么时候调用呢?就是在每一次item屏幕外滑进屏幕内时候,或者程序刚开始时候创建第一屏item时候。...getView(int position, View convertView, ViewGroup parent) {//这个函数主要是就是当我们城市非常时候,我们滑动屏幕,视图是需要不断更新...ViewHolder holder;//要显示在界面上两个控件 if (convertView == null) {//如果视图不可以重用的话,我们需要用到备用视图 convertView...TextView name;//对应是城市名称 } } 特别提供: public abstract View getView (int position, View convertView

51620
您找到你想要的搜索结果了吗?
是的
没有找到

Android开发-Listview中显示不同视图布局

使用场景 在重写ListViewBaseAdapter时,我们常常在getView()方法中复用convertView,以提高性能。...convertView在Item为单一同种类型布局时,能够回收并重用,但是多个Item布局类型不同时,convertView回收和重用会出现问题。...比如有些行为纯文本,有些行则是图文混排,这里纯文本行为一类布局,图文混排行为第二类布局。单一类型ListView很简单,下面着重介绍一下ListView包含多种类型视图布局情形。...2.ListView包含不同Item布局 我们需要做这些工作:   1)重写 getViewTypeCount() – 该方法返回多少个不同布局   2)重写 getItemViewType...(int) – 根据position返回相应Item   3)根据view item类型,在getView中创建正确convertView 3.案例 import java.util.ArrayList

2.2K30

Android ListView适配器应该这样写

ListView是我们开发中很重要控件,在项目中也用非常多,为了利用ListView展示数据,我们都需要给它新建一个适配器Adapter,一般继承于BaseAdapter,然后重写一些方法,其中最重要方法是...public View getView(int position, View convertView, ViewGroup parent),当然我们会依次做View重用,还会利用ViewHolder缓存已经映射完成子控件...接下来我们重写ListAdapter分组方法,毕竟还是有很多时候ListViewcell样式不止一种。...接下来是最重要getView方法。...最后我还是想多说一句,了解开源项目背后实现原理非常必要,更重要是能够在原有的基础上进行改进创新,更难能可贵,在这个过程中,我们自己也会得到提升。

52920

Android ListView实现无限循环滚动

本文实例为大家分享了Android无限循环滚动具体代码,供大家参考,具体内容如下 因项目需要循环展示列表数据,所以就实现了这个无限循环滚动 LIstView.先说一下原理,原理呢,其实很简单,首先将要展示数据循环展示三遍...,然后可以不停向上或者向下滑动,永远不会到头,废话少说,上 代码: 让ListView循环三遍展示 首先利用取余方法,将List里面的数据循环展示 public class ListAdapter...@Override public long getItemId(int arg0) { return arg0 % list.size(); } @Override public View getView...(int postition, View convertView, ViewGroup arg2) { ViewHoler viewHolder = null; if(convertView ==..., null); viewHolder.tvText = (TextView) convertView.findViewById(R.id.adapter_list_layout_tv); convertView.setTag

3.1K31

速读原著-Android应用开发入门教程(列表(List)视图组)

8.6 列表(List)视图组 本节介绍列表(List)视图组可以将某种控件按照列表形式组织起来,它与网格视图组类似,但是附加了更方便组织方式。...widget.Adapter> => android.widget.AbsListView => android.widget.ListView ListView 也扩展了 AbsListView,列表视图使用方法和网格视图具有很相似的共同点...: void setListAdapter(ListAdapter adapter) // 设置 ListAdapter 作为数据 void onListItemClick(ListView l, View...ListActivity,这里使用 getListView()将返回布局文件中定义 id 是"@android:id/list"ListView。...省略部分内容 } 这里 getView()函数所返回是 ImageView 类型,这样在列表中显示内容就可以是一组图片了。

54910

Android开发:ListView、AdapterView、RecyclerView全面解析

}//这个方法返回了在列表中与指定索引对应行id @Override public View getView(int position, View convertView, ViewGroup...重写getView()第二种方法:使用convertView作为缓存进行优化 getView()返回值是一个View,把它作为输入参数并放到getView()输入参数里,形成反馈。...; }//这个方法返回了指定索引对应数据项视图 这种方法和第一种相比减少了重绘View次数,但是还是每一次都要findViewById 重写getView()第三种方法 通过convertView...; }//这个方法返回了指定索引对应数据项视图 这种方法就既减少了重绘View,又减少了findViewById次数,所以这种方法是最能节省资源,所以非常推荐大家使用通过convertView...,所以要在xml里面配置android:focusable="false" } }); return convertView; }//这个方法返回了指定索引对应数据项视图

3.4K30

安卓第八夜 玛丽莲梦露

上一讲说明了数据库中存取数据方法。这一讲将以条目的视图方式,来以相似的视图方式,显示多个数据对象。这种方式特别适合于显示数据库中取出多个结构相似的数据,比如多个联系人,或者多个联系人分类。...未来字符串型数据按照该视图元素规定格式显示。这个布局源代码可参考链接。安卓还提供了其它一些简易布局,参考链接。我们当然可以用自己布局来替代它。...我通过编写getView()方法,来说明每个Category对象和对应条目视图绑定方式。...该方法第一个参数代表了条目的编号,第二个参数是条目的视图,第三个参数代表了母视图,也就是整个ListView。需要注意是第二个参数,即convertView。...随着用户上下滑动屏幕,ListView条目可能消失。安卓会重复利用消失条目的视图树,以节省重新建立条目视图所需要时间。convertView中就包含了这样一个重复利用条目视图

1.9K90
领券