参考博客: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. 优雅的函数式编程--Clojure概述

    欢迎转载,转载请注明出处,徽沪一郎. 楔子 由于阅读storm源码的原因,头一次接触到Clojure.没有花特别的时间来研究clojure语法,只是在一些特殊的用法时,才查了一下clojure官网的文 ...

  2. mysql执行完select后,释放游标

    内存释放 在我们执行完SELECT语句后,释放游标内存是一个很好的习惯. .可以通过PHP函数mysql_free_result()来实现内存的释放. 以下实例演示了该函数的使用方法. 2.mysql ...

  3. Linux改变文件或目录的访问权限命令

    使用  ll  或  ls -l 指令时 第一列会显示出目录下文件的权限 例如∶ -rw-r-r- 横线代表空许可.r代表只读,w代表写,x代表可执行.注意这里共有10个位置.第一个字符指定了文件类型 ...

  4. python 执行文件时传参

    ## test.py ## ####################### import sys if __name__ == "__main__": args = sys.arg ...

  5. Nginx/LVS/HAProxy负载均衡软件的优缺点详解

    PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下. 一般对负载均衡的使用是随着网站规模的提升根据不 ...

  6. C# Xml文件操作,解释见注释

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. linux 自动登录脚本

    #!/usr/bin/expect set port 22 set user xiaoming set password xiaoming123 set host 111.222.22.33 set ...

  8. jquery鼠标移入某区域屏蔽鼠标滚轮 滚动滚动条

    <script> var firefox = navigator.userAgent.indexOf('Firefox') != -1; function MouseWheel(e) { ...

  9. cursor:pointer

    .cursor_hand{ cursor:pointer; }

  10. Andrew Ng机器学习公开课笔记–Principal Components Analysis (PCA)

    网易公开课,第14, 15课 notes,10 之前谈到的factor analysis,用EM算法找到潜在的因子变量,以达到降维的目的 这里介绍的是另外一种降维的方法,Principal Compo ...