参考博客: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使用误区的更多相关文章

  1. Android ListView 自定义 Adapter

    自定义Adapter类 public class ListViewAdapter extends BaseAdapter { private static final String TAG = Mai ...

  2. [Android] Android RecycleView和ListView 自定义Adapter封装类

    在网上查看了很多对应 Android RecycleView和ListView 自定义Adapter封装类 的文章,主要存在几个问题: 一).网上代码一大抄,复制来复制去,大部分都运行不起来,或者 格 ...

  3. Android listview与adapter用法(BaseAdapter + getView)

    Android listview与adapter用法http://www.cnblogs.com/zhengbeibei/archive/2013/05/14/3078805.html package ...

  4. Android学习----自定义Adapter实现ListView

    前言: 对于ListView而言,自定义的Adapter对于显示复杂的界面有很大的灵活性 .使用自定义的Adapter需要继承BaseAdapter,然后重写getCount(),getView(), ...

  5. Android listview与adapter用法

    listview与adapter用法 博客分类: android   一个ListView通常有两个职责. (1)将数据填充到布局. (2)处理用户的选择点击等操作. 第一点很好理解,ListView ...

  6. 【转】Android listview与adapter用法

    一个ListView通常有两个职责. (1)将数据填充到布局. (2)处理用户的选择点击等操作. 第一点很好理解,ListView就是实现这个功能的.第二点也不难做到,在后面的学习中读者会发现,这非常 ...

  7. 【转】Android之自定义Adapter的ListView

    http://www.cnblogs.com/topcoderliu/archive/2011/05/07/2039862.html 在开发中,我们经常使用到ListView这个控件.Android的 ...

  8. Android之自定义Adapter的ListView

    ListView的创建,一般要具备两大元素: 1)数据集,即要映射的字符串.图片信息之类. 2)适配器,实现把要映射的字符串.图片信息映射成视图(如Textview.Image等组件),再添加到Lis ...

  9. Android ListView 和 ***Adapter 从本地/网络获取歌曲列表

    本文内容 环境 项目结构 测试数据 演示 1:SimpleAdapter 演示 2:BaseAdapter 演示 3:CustomLazyList 演示 4:CustomLazyCompleteLis ...

随机推荐

  1. .net 后台设置meta的属性(keywords,description)

    首先在前台aspx文件中的head标记添加runat="server"的属性. 之后后台如下编写: protected void Page_Load(object sender, ...

  2. HDU 2159 FATE(二维费用背包)

    FATE Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  3. SIP中OPTIONS方法的用法及示例

    SIP中OPTIONS方法的用法及示例 用OPTIONS方法实现Keep Alive SIP keep-alive方法

  4. tunnel.p4

    Tunneling: VXLAN and NVGRE (including L2/L3 Gateway), Geneve, GRE and IPinIP /* Copyright 2013-prese ...

  5. PHP fwrite() 函数与 file_put_contents() 函数的比较

    两个 PHP 函数都可以把字符串保存到文件中,fwrite() 函数的格式是: int fwrite ( resource handle , string string [ , int length] ...

  6. MongoDB性能监控

    1.mongostat 查看运行中的mongodb实例的统计信息 重要指标说明: getmore: 通常发生在结果集比较大的查询时,第一个query返回了部分结果,后续的结果是通过getmore来获取 ...

  7. 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 ...

  8. Java构造和解析Json数据的两种方法详解二

    在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...

  9. maven 添加本地jar

    方式一 Xml代码 <dependency> <groupId>org.apache</groupId> <artifactId>test</ar ...

  10. 数据传输:JSON,XML

    一.调用Ajax需要的JSON数据    1.url 处理页面    2.data 传递数据    3.datatype返回数据类型    4.type 提交数据方式    5.success成功之后 ...