• 安卓天天练练(十一)用list绑数据


    之前在练练ListView的时候就有个

    BaseAdapter ba = new BaseAdapter() {

    用Adapter来绑数据的方法,该方法中

    LinearLayout ll=new LinearLayout(MainActivity.this);

    用append的方式追加了文字,

    最后return 这个ll对象,

    很像html的createElement那样用java构建布局,

    onCreate方法内部最后在ListView实例上lv绑定数据:

    lv.setAdapter(ba);

    有的时候,光用Adapter还不够,需要组织好传入的数据,比如自己构建list

    public List<? extends Map<String,Object>> list=new ArrayList<Map<String,Object>>();;

    int rowCounter = drawable.length;
    for(int i =0; i< rowCounter; i++){
      HashMap<String,Object> hmap = new HashMap< String,Object>();
      hmap.put("col1",drawableIds[i]);
      hmap.put("col2",this.getResources().getString(nameId[i] ));
      hmap.put("col3",this.getResources().getString(msgIds[i] ));
      list.add(hmap);
     }
    return
    list;
    }

    //Adapter
    ...onCreate()...
    {
      GridView gv(GridView)this.findViewById(R.id.GridView01);
      SimpleAdapter sca = new SimpleAdapter(

        this,
      generateDataList(),
      R.layout.grid row,
        new String[]{"col1","col2","col3"},
        new int[]{R.id.ImageView01,R.id....}
    };
    gv.setAdapter(sca);

    此处有三列,对应了一个设计了三列的GridView布局。

    <pre><LinearLayout ......>
    <TextView... />
    <GridView
    android:id="@+id/GridView01"
    android:layout_height="fill_parent"
    android:verticalSpacing="5dip"
    android:horizozntalSpacing="5dip"
    android:stretchMode="columnWidth" />
    </LinearLayout></pre>

    其他部分和练练(十)差不多,可以尝试将(十)也改成list绑定数据。

  • 相关阅读:
    css表格单元格间距设置
    JavaScript(js)设置输入焦点(focus)
    让div居中的方法
    Window.open()的使用
    getElementsByTagName的用法
    offsetTop获取top值
    js中indexof的使用
    jquery解析json数据
    iframe的使用
    WCF学习笔记Ⅲ
  • 原文地址:https://www.cnblogs.com/haimingpro/p/4756344.html
Copyright © 2020-2023  润新知