• Listview的运行效率


    1.在getView()方法中有个convertView参数,这个参数可以将之前加载好的布局进行缓存,以便以后重复使用

    if (convertView==null){
    //LayoutInflater 加载我们传入的子项false 表示只让父类layout属性生效
    view= LayoutInflater.from(getContext()).inflate(resourceId,parent,false);
    }else {
    view =convertView;
    }

    如果convertVivw为空则用LayoutInflater来加载我们的子项布局,如果不则用convertView来加载。
    ---------------------------------------------------------------------------------------------------------------------------------------------
    如果添加点击事件的时候
    首先找到ListView控件,通过控件添加监听事件,并且通过position判断点击的那个子项
     initFruits();//初始化水果数据
    FruitAdapter adapter= new FruitAdapter(MainActivity.this,R.layout.fruit_item,fruitList);
    ListView listView = (ListView) findViewById(R.id.lv);
    //将搭建好的对象传入
    listView.setAdapter(adapter);

    //为ListView 设置监听事件
    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    //通过position参数判断点击那个子项
    Fruit fruit= fruitList.get(position);
    Toast.makeText(getApplicationContext(),fruit.getName(),Toast.LENGTH_SHORT).show();
    }
    });
     
  • 相关阅读:
    iOS深入学习(Block全面分析)
    iOS 多快好省的宏定义
    1.ARC和非ARC文件共存
    简单的实现UIpicker上面的取消确定按钮
    ios 简单的倒计时验证码数秒过程实现
    jquerymobile 基础教程
    得到UIView中某个非子视图在UIView中的位置
    状态栏问题
    html表格,列表
    html简单样式
  • 原文地址:https://www.cnblogs.com/lyl123/p/7149279.html
Copyright © 2020-2023  润新知