在getview方法中有三个参数,起到优化的部分为ViewHolder的使用,主要方法setTag(),getTag()
适配器代码如下:
public class Myadapter extends BaseAdapter {
    List<String> date;
    Context context;
//构造方法
    public Myadapter(List<String> date, Context context) {
        this.date = date;
        this.context = context;
    }
//获取ListView的总条目数
    @Override
    public int getCount() {
        return date.size();
    }
//条目的索引
    @Override
    public Object getItem(int position) {
        return date.get(position);
    }
//获取条目的位置
    @Override
    public long getItemId(int position) {
        return position;
    }
/*
     * 渲染(填充),调用data.size次
     * position 索引
     * convertView 条目的View
     * parent :Listview
     * */
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder = null;
        //当convertView首次加载的时候
        if (convertView == null) {
            //获取打气筒
            LayoutInflater inflater = LayoutInflater.from(context);
            //填充单个Item
            convertView = inflater.inflate(R.layout.item_main, null);
            //获取Viewholder对象,减少findViewById的次数
            holder = new ViewHolder();
            //从填充的条目View中找到我们所关心的控件
            holder.textView = convertView.findViewById(R.id.tv_my);
            //将holder装进convertView的口袋
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag(http://www.my516.com);
        }
        //填充数据
        holder.textView.setText(date.get(position));
        return convertView;
    }
    //创建一个容器装要复用的View
    static class ViewHolder {
        TextView textView;
    }
}
---------------------
在getview方法中有三个参数,起到优化的部分为ViewHolder的使用,主要方法setTag(),getTag()的更多相关文章
- android开发 BaseAdapter中getView()里的3个参数是什么意思
		BaseAdapter适配器里有个getView()需要重写public View getView(int position,View converView,ViewGroup parent){ // ... 
- 动态代理中newProxyInstance中三个参数
		JDK Proxy(代理对象): Proxy.newProxyInstance 方法的三个参数创建代理对象 增强 person对象 使用代理对象代替person 去执行 doCourt方法参数1 类 ... 
- java方法强制传递引用参数(做为返回值),改变被传递参数值。
		Java传递参数分为2种: 值类型,Java里面也叫简单类型,这种参数类型的传递的是它的副本拷贝: 引用类型,传递的是对象引用地址,如果在方法内改变该参数对象属性即是对原引用对象的改变:如果不想这样传 ... 
- 三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
		关于inflate参数问题,我想很多人多多少少都了解一点,网上也有很多关于这方面介绍的文章,但是枯燥的理论或者翻译让很多小伙伴看完之后还是一脸懵逼,so,我今天想通过三个案例来让小伙伴彻底的搞清楚这个 ... 
- 【转】三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
		关于inflate参数问题,我想很多人多多少少都了解一点,网上也有很多关于这方面介绍的文章,但是枯燥的理论或者翻译让很多小伙伴看完之后还是一脸懵逼,so,我今天想通过三个案例来让小伙伴彻底的搞清楚这个 ... 
- LayoutInflater.inflate()方法两个参数和三个参数
		转载请标明出处:https://www.cnblogs.com/tangZH/p/7074853.html 很多人都用过LayoutInflater(布局填充器) 对于我来说通常使用下面两种:Lay ... 
- js replace 全局替换  以表单的方式提交参数  判断是否为ie浏览器    将jquery.qqFace.js表情转换成微信的字符码  手机端省市区联动  新字体引用本地运行可以获得,放到服务器上报404  C#提取html中的汉字 MVC几种找不到资源的解决方式  使用Windows服务定时去执行一个方法的三种方式
		js replace 全局替换 js 的replace 默认替换只替换第一个匹配的字符,如果字符串有超过两个以上的对应字符就无法进行替换,这时候就要进行一点操作,进行全部替换. <scrip ... 
- [五]java函数式编程归约reduce概念原理 stream reduce方法详解 reduce三个参数的reduce方法如何使用
		reduce-归约 看下词典翻译: 好的命名是自解释的 reduce的方法取得就是其中归纳的含义 java8 流相关的操作中,我们把它理解 "累加器",之所以加引号是因为他并不仅仅 ... 
- 三十九:数据库之SQLAlchemy.relationship方法中的cascade参数
		在SQLAlchemy中,只要将一条数据添加到session中,其它和此条数据相关联的数据都会一起存到数据库中,这是因为在relationship中有一个关键字参数:cascade,默认选项为save ... 
随机推荐
- Noi2018 归途
			zz:https://blog.csdn.net/dreaming__ldx/article/details/81106748 以海拔为第一关键字对边进行从大到小的排序,然后修建kruskal重构树, ... 
- Vue路由注意事项
			一.vue中路由的使用 1.定义组件 <template> <div class="hello"> <h1 @click="info&quo ... 
- Java 位运算符和移位运算符
			一,运算的位运算符: & ~ | ^ 主要是对二进制的位计算 : & : 两个操作数中位都为1 结果才为1 其他结果为0 forExample: 128 ... 
- oracle--多表联合查询sql92版
			sql92学习 -查询员工姓名,工作,薪资,部门名称 sql的联合查询(多表查询) --1.sql92标准 ----笛卡尔积:一件事情的完成需要很多步骤,而不同的步骤有很多种方式,完成这件事情的所有方 ... 
- lesson2-完全图、补图和顶点度
			(一).完全图.偶图与补图 1.每两个不同的顶点之间都有一条边相连的简单图称为完全图 (complete graph).在同构意义下,n个顶点的完全图只有一个,记为 2.所谓具有二分类(X, Y)的偶 ... 
- [Web 前端] 016 css 元素的转换
			三种元素之间的转换 display 属性是用来设置元素的类型及隐藏的 常用的属性有 none 元素隐藏且不占位置 block 元素以块元素显示 inline 元素以内联元素显示 inline-bloc ... 
- mysql续集(查询部分)
			mysql查询部分,从基础的查询到关键字,where子句,group by, order by, limit ,having,子查询分为from子查询和where子查询,左连接和右连接,内连接的连表查 ... 
- 面向切面编程 AOP 和装饰器??
			1.AOP概念:面向切面编程,指扩展功能不修改源代码,将功能代码从业务逻辑代码中分离出来. 主要功能:日志记录,性能统计,安全控制,事务处理,异常处理等等. 主要意图:将日志记录,性能统计,安全控制, ... 
- Codeforces - 6E - Exposition - 尺取
			https://codeforc.es/problemset/problem/6/E 既然可以多个log,那就直接map伺候.尺取之后要查询区间里面的最大值和最小值的差.众所周知尺取的时候要是不是有序 ... 
- 问题 B: 傻鸡抓大闸蟹
			问题 B: 傻鸡抓大闸蟹 时间限制: 1 Sec 内存限制: 128 MB提交: 94 解决: 39[提交] [状态] [命题人:jsu_admin] 题目描述 背景又到了吃大闸蟹的季节,黄老师想 ... 
