• Android ListView 的基本应用,包括缓存


    class MyAdapter extends BaseAdapter {
            //返回要显示的条目的数量
            @Override
            public int getCount() {
                return list.size();
            }
     
            //获取条目
            @Override
            public Object getItem(int position) {
                return list.get(position);
            }
     
            //获取条目的id
            @Override
            public long getItemId(int position) {
                return 0;
            }
     
            //返回一个view对象,会作为listView的一个条目显示在界面上
            @Override
            public View getView(int position, View convertView, ViewGroup parent) {
                View v = null;
                ViewHolder mHolder = null;
                if (convertView == null) {   //如果缓存为空,则重新填充布局文件
                    v = View.inflate(AddMerryActivity.this, R.layout.list_item_merry, null);  //采用填充的方式
                    //创建ViewHolder,封装所有条目使用的组件
                    mHolder = new ViewHolder();
     
                    mHolder.tv_time = (TextView) v.findViewById(R.id.time_merry);  //时间
                    mHolder.tv_content = (EditText) v.findViewById(R.id.content_merry); //内容
    //                mHolder.siv = (SmartImageView) v.findViewById(R.id.head_merry);  //头像
                    //将ViewHolder封装至View对象中,这样View被缓存时,ViewHolder也被缓存了
                    v.setTag(mHolder); //设置一个标签,将一个对象存到View中,是一个Object类型
                } else {   //如果缓存不为空,直接调用缓存
                    v = convertView;   //convertView 缓存的条目
                    //从View中取出保存的ViewHolder,ViewHolder中就有所有组件对象,不需要再去findViewById
                    mHolder = (ViewHolder) v.getTag();
                }
                // 改变每个条目显示的内容,找到布局文件中对应的组件
                mHolder.tv_time.setText(textTime.getText().toString());
                mHolder.tv_content.setText(editContent.getText().toString());
    //            mHolder.siv.setImageUrl("head_portrait");
                return v;
            }
        }
     
        //把条目需要使用到的所有组件封装到这个类中
        class ViewHolder {
            TextView tv_time;
            EditText tv_content;
    //        SmartImageView siv;
        }
  • 相关阅读:
    几个生僻字:烎,囧、槑、玊、奣、嘦、勥、巭、嫑、恏、兲、氼、忈、炛
    移动互联网相关应用网站
    Android 布局简要范例
    参与了一次体验不好的产品体验
    ros6.44版本增加了测试出两台ROS之间的速度极限是多少
    mikrotik ros CVE-2019–3924 DUDE AGENT VULNERABILITY
    如何获取阿里云OSS上每个文件夹的大小
    USB-IF协会公布最新PD3.0(PPS)协议认证芯片和产品名单
    第一次有人把小米9快充讲的这么简单明了qc3.0 usb pd
    查看手机拍照性能排名以及电池排名的两个网站
  • 原文地址:https://www.cnblogs.com/tyzl/p/5452879.html
Copyright © 2020-2023  润新知