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 ...
随机推荐
- .net 后台设置meta的属性(keywords,description)
首先在前台aspx文件中的head标记添加runat="server"的属性. 之后后台如下编写: protected void Page_Load(object sender, ...
- HDU 2159 FATE(二维费用背包)
FATE Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- SIP中OPTIONS方法的用法及示例
SIP中OPTIONS方法的用法及示例 用OPTIONS方法实现Keep Alive SIP keep-alive方法
- tunnel.p4
Tunneling: VXLAN and NVGRE (including L2/L3 Gateway), Geneve, GRE and IPinIP /* Copyright 2013-prese ...
- PHP fwrite() 函数与 file_put_contents() 函数的比较
两个 PHP 函数都可以把字符串保存到文件中,fwrite() 函数的格式是: int fwrite ( resource handle , string string [ , int length] ...
- MongoDB性能监控
1.mongostat 查看运行中的mongodb实例的统计信息 重要指标说明: getmore: 通常发生在结果集比较大的查询时,第一个query返回了部分结果,后续的结果是通过getmore来获取 ...
- passing parameters by value is inefficient when the parameters represent large blocks of data
Computer Science An Overview _J. Glenn Brookshear _11th Edition_C Note that passing parameters by va ...
- Java构造和解析Json数据的两种方法详解二
在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...
- maven 添加本地jar
方式一 Xml代码 <dependency> <groupId>org.apache</groupId> <artifactId>test</ar ...
- 数据传输:JSON,XML
一.调用Ajax需要的JSON数据 1.url 处理页面 2.data 传递数据 3.datatype返回数据类型 4.type 提交数据方式 5.success成功之后 ...