Android笔记----ListView

ListView 是一个控件,一个在垂直滚动的列表中显示条目的一个控件,这些条目的内容来自于一个ListAdapter (适配器)。

说明:(结合练习代码一起看)

ListAdapter是一个接口,若要获得适配器adapter,需要创建一个类去实现ListAdapter,而Java中有提供这种实现ListView 的类,可直接创建个类来继承.在公司ListAdapter的BasaAdapter实现类.(ListAdapte--rAPI详接)

        1.布局添加Listview
        2.找到listview----------与其他控件一样,通过 findViewById() 获取控制权.

        3.创建一个Adapter适配器继承BaseAdapter,封装4个方法,其中getcount,getview必须封装
                getcount:告诉listview要显示的条目数 
                getview:告诉listview每个条目显示的内容。


        4.创建Adapter的一个对象,设置给listview。
                listview.setAdapter(ListAdapter adapter);

    
listview优化 

adapter中getview方法会传进来一个convertView,convertView是指曾经使用过的view对象,可以被重复使用,但是在使用前需要判断是否为空,不为空直接复用,并作为getview方法的返回对象。
            TextView view = null;
            if(convertView != null){//判断converView是否为空,不为空重新使用
                view = (TextView) convertView;
            }else{
                view = new TextView(mContext);//创建一个textView对象
            }
            return view;

解析:这里System打印的map对象,来辨别TextView对象的唯一性.利用了map的键值对(key:哈希值),以及对象在内存中哈希值的唯一性.而Map可以对key相同的键值对进行合并.

猜你喜欢

转载自blog.csdn.net/qq_38930129/article/details/82961785