zoukankan      html  css  js  c++  java
  • 针对BaseAdapter的扩展

    针对BaseAdapter可以有一些扩展,比如在一行中加入几个元素如下图所示。

    为了完成上面的内容,需要在布局文件中加入一个布局文件R.layout.listview_item,这个布局文件中描述了要显示的内容。

    自定义MyAdapter来继承BaseAdapter。

    必须要覆写getCount() 和getView()方法。

    关键代码:

    public View getView(final int position, View convertView, ViewGroup parent) {
    //List中的一条数据
    DataModel item;

    //设置布局中内容与数据的对应关系,通过ID进行设置
    if (convertView == null) {
    item
    = new DataModel();
    convertView
    = inflater.inflate(R.layout.listview_item, null);
    item.setImView((ImageView) convertView.findViewById(R.id.listview_image));
    item.setCheckBox((CheckBox) convertView.findViewById(R.id.listview_checkbox));
    item.setText((TextView) convertView.findViewById(R.id.listview_text));

    convertView.setTag(item);
    }
    else {
    item
    = (DataModel) convertView.getTag();
    }

    //设置数据
    if (position % 2 == 0) {
    item.getCheckBox().setChecked(
    true);
    }
    else {
    item.getCheckBox().setChecked(
    false);
    }
    item.getCheckBox().setOnClickListener(
    new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    Toast.makeText(context, datas.get(position).getText(), Toast.LENGTH_SHORT).show();
    }
    });
    item.getImView().setImageDrawable(getResources().getDrawable(datas.get(position).getImageId()));
    item.getText().setText(datas.get(position).getText());

    return convertView;
    }

      

  • 相关阅读:
    flask 中的request
    悲观锁、乐观锁、行级锁、表级锁
    python标准库--functools.partial
    Django Model._meta API
    python中的urlencode与urldecode
    Django模版语言inclusion_tag的用法。
    Django的URL别名
    Django之模板语言
    django-request对象
    Java 基础
  • 原文地址:https://www.cnblogs.com/xitang/p/2175330.html
Copyright © 2011-2022 走看看