zoukankan      html  css  js  c++  java
  • 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();
    }
    });
     
  • 相关阅读:
    状态管理cookie 案例
    JavaScript对象(document对象 图片轮播)
    JavaScript对象(窗口对象 定时器对象 )
    JavaScript对象(正则表达式,Date对象,function对象 arguments对象)
    CSS概述<选择器总结>
    HTML表单
    Web表格
    JDBC项目实践
    JDBC获取表的主键
    JDBC中DAO事务函数模版
  • 原文地址:https://www.cnblogs.com/lyl123/p/7149279.html
Copyright © 2011-2022 走看看