Android ListView自定义Adapter使用误区
参考博客:BaseAdapter中重写getview的心得以及发现convertView回收的机制
使用自定义的BaseAdapter实现LIstView的展示
由于Recycler(反复循环器)的机制,所以getView代码转变如下
public View getView(int position, View view, ViewGroup viewGroup) {
final SpinnerItem item = (SpinnerItem)getItem(position);
ViewHolder viewHolder=null;
// Log.e("SEARCH_RESULT", String.valueOf(position));
// Log.e("SEARCH_RESULT", item.getItemID());
if (view == null) {
view = View.inflate(mContext, layout, null);
viewHolder = new ViewHolder();
viewHolder.mTxtName = (TextView) view.findViewById(R.id.search_expand_item);
viewHolder.mTxtID =(TextView)view.findViewById(R.id.search_expand_item_id);
viewHolder.mTxtDisplay =(TextView)view.findViewById(android.R.id.text1);
view.setTag(viewHolder);
} else {
viewHolder = (ViewHolder)view.getTag();
}
if(viewHolder != null) {
if (viewHolder.mTxtName != null) {
viewHolder.mTxtName.setText(item.getItemName());
}
if(viewHolder.mTxtID != null) {
viewHolder.mTxtID.setText(item.getItemID());
}
if(viewHolder.mTxtDisplay !=null) {
viewHolder.mTxtDisplay.setText(item.getItemName());
}
}
// if(mTxtName != null) {
// mTxtName.setText(item.getItemName());
// }
// if(mTxtID != null) {
// mTxtID.setText(item.getItemID());
// }
//
// if(mTxtDisplay != null){
// mTxtDisplay.setText(item.getItemName());
// }
return view;
}
使用了ViewHolder,如下
public class ViewHolder{
TextView mTxtName;
TextView mTxtID;
TextView mTxtDisplay;
}
Android ListView自定义Adapter使用误区的更多相关文章
- Android ListView 自定义 Adapter
自定义Adapter类 public class ListViewAdapter extends BaseAdapter { private static final String TAG = Mai ...
- [Android] Android RecycleView和ListView 自定义Adapter封装类
在网上查看了很多对应 Android RecycleView和ListView 自定义Adapter封装类 的文章,主要存在几个问题: 一).网上代码一大抄,复制来复制去,大部分都运行不起来,或者 格 ...
- Android listview与adapter用法(BaseAdapter + getView)
Android listview与adapter用法http://www.cnblogs.com/zhengbeibei/archive/2013/05/14/3078805.html package ...
- Android学习----自定义Adapter实现ListView
前言: 对于ListView而言,自定义的Adapter对于显示复杂的界面有很大的灵活性 .使用自定义的Adapter需要继承BaseAdapter,然后重写getCount(),getView(), ...
- Android listview与adapter用法
listview与adapter用法 博客分类: android 一个ListView通常有两个职责. (1)将数据填充到布局. (2)处理用户的选择点击等操作. 第一点很好理解,ListView ...
- 【转】Android listview与adapter用法
一个ListView通常有两个职责. (1)将数据填充到布局. (2)处理用户的选择点击等操作. 第一点很好理解,ListView就是实现这个功能的.第二点也不难做到,在后面的学习中读者会发现,这非常 ...
- 【转】Android之自定义Adapter的ListView
http://www.cnblogs.com/topcoderliu/archive/2011/05/07/2039862.html 在开发中,我们经常使用到ListView这个控件.Android的 ...
- Android之自定义Adapter的ListView
ListView的创建,一般要具备两大元素: 1)数据集,即要映射的字符串.图片信息之类. 2)适配器,实现把要映射的字符串.图片信息映射成视图(如Textview.Image等组件),再添加到Lis ...
- Android ListView 和 ***Adapter 从本地/网络获取歌曲列表
本文内容 环境 项目结构 测试数据 演示 1:SimpleAdapter 演示 2:BaseAdapter 演示 3:CustomLazyList 演示 4:CustomLazyCompleteLis ...
随机推荐
- Html - 涟漪特效
这种效果稍加改造非常优雅.并且可以准确的实验触摸聚焦点.缺点是非常消耗内存.娱乐为主吧 js //╠═╬═╬═╬═╬═╬═╬═╬═╬═╬═╣ 涟漪特效 ╠═╬═╬═╬═╬═╬═╬═╬═╬═╬═╣ 涟漪 ...
- 8. Add the dashboard
Controller Node: 1. sudo apt-get install apache2 memcached libapache2-mod-wsgi openstack-dashboard ...
- dom4j最常用最简单的方法
要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站在 http://www.dom4j.org/目前最新dom4j包下载地址:http://nchc.dl.sourceforg ...
- TCP协议中的三次握手和四次挥手(图解)(转载http://blog.csdn.net/whuslei/article/details/6667471)
建立TCP需要三次握手才能建立,而断开连接则需要四次握手.整个过程如下图所示: 先来看看如何建立连接的 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源 ...
- oracle sqlplus常用命令
登录到sqlplus sqlplus user/pwd@dbname 不登录使用 sqlplus /nolog 查看当前登录用户 show user; 更改用户密码 ALTER USER USER I ...
- html EL表达式抬头
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <c:forE ...
- synchronized的使用方法
[转自] http://blog.csdn.net/witsmakemen/article/details/6966116 记下来,很重要. Java语言的关键字,当它用来修饰一个方法或者一个代码块的 ...
- nodejs 执行shell 命令
有需要从前端操作服务器执行shell命令的需求 建立一个process.js文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 var process = ...
- (转)web网站架构演变
浅谈web网站架构演变过程 前言 我们以javaweb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变. 该系统具备的功能: 用户模块:用户注册和管理 商品模块:商品展示和管 ...
- 蓝牙—服务发现协议(SDP)
服务搜索协议(SDP)提供了应用发现可用服务以及确定可用服务特点的方法.SDP发现协议提供下面的能力 <1>为客户提供搜索所需要服务的能力. <2>允许基于服务类型搜索服务 & ...