zoukankan      html  css  js  c++  java
  • MyAdapter Andriod

    private List<T> listdate;//定义数据对象
    //为了获取item中的点击事件定义ViewHolder
    private static class ViewHolder {
    //listitem(布局xml)的控件
    ImageButton btn_edit;
    ImageButton btn_del;
    TextView tv_itemid,tv_itemname,tv_itemnum;
    }
    //定义数据适配器
    class MyAdapter extends BaseAdapter{

    @Override
    public int getCount() { return listdate.size(); }

    @Override
    public Object getItem(int position) { return null; }

    @Override
    public long getItemId(int position) { return 0; }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder vh;
    //实现布局
    if(convertView == null){ //子view第一次出现,需要构造,将重要内容放置在viewHolder,并通过setTag()存放。
    convertView = View.inflate(getApplicationContext(), R.layout.listitem, null ); //创建view
    vh = new ViewHolder();
    convertView.setTag(vh);
    }else{ //子view已经出现过,利用原来已经创建的对象,获得控件信息
    vh = (ViewHolder)convertView.getTag();
    }

    vh.btn_edit=(ImageButton)convertView.findViewById(R.id.btn_edit);
    vh.tv_itemid=(TextView)convertView.findViewById(R.id.tv_itemid);
    //赋值
    vh.tv_itemid.setText(listdate.get(position).(为定义T对象的属性));

    //编辑按钮
    vh.btn_edit.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {

    }
    });

    return convertView; //返回子view的对象
    }
    }

    //调用
    ListView lv   --控件
    lv.setAdapter(new MyAdapter());

  • 相关阅读:
    linux 命令——48 watch (转)
    linux 命令——47 iostat (转)
    linux 命令——46 vmstat(转)
    linux 命令——45 free(转)
    linux 命令——44 top (转)
    linux 命令——43 killall(转)
    linux 命令——42 kill (转)
    linux 命令——41 ps(转)
    linux 命令——40 wc (转)
    Java for LeetCode 068 Text Justification
  • 原文地址:https://www.cnblogs.com/w1-y2-q5/p/8676598.html
Copyright © 2011-2022 走看看