Android的ListView中的SimpleAdapter simpleadapter

public SimpleAdapter (Context context, List<?extends Map<String,?>> data, int resource, String[]from, int[] to);

这是构造函数.

context是在何处运行这个adapt一般写this

data 是一个list集合类引用.这个集合类元素是map 集合类引用.这个map集合类具体里面有什么东西需要我们自己添加了。

ArrayList<Map<String,Object>>coll
= new ArrayList<Map<String,Object>>();
定义List 结合类
Map<String, Object>item;
item = new HashMap<String,Object>();
item.put("prod_na", "Linux");

item.put("prod_type", "ST");
想map 集合类里添加数据.
coll.add(item);
把map 集合类引用添加到list集合类中.
item = new HashMap<String,Object>();
item.put("prod_na", "Windows"); item.put("prod_type","Mobile");
coll.add(item);
用了这个东西就好了。然后下一个参数resource
代表Listview 中每个行框 (item)的布局文件索引.就是那个.xml 中在R.Layout. #那个整数.用这个.xml描述了每个Item的外表.
from是个数组索引,该数组指明了要取map里的哪个值,因为map是个键值对,你传进去键值,系统会自动给你找到他的值.
最后 to 用来指明你从map里取的这写值如何和这个xml匹配,一般建议这个xml里有几个textview.你把这几个控建的ID传进去就好了.

例:

(List1.java)

package Jezze.Goo;

import java.util.ArrayList;
import java.util.HashMap;

import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.SimpleAdapter;

public class List1 extends ListActivity{
@Override
protectedvoid onCreate(Bundle savedInstanceState){
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
ArrayList<HashMap<String,String>>list=newArrayList<HashMap<String,String>>();
HashMap<String,String> map1 =newHashMap<String,String>();
HashMap<String,String> map2 =newHashMap<String,String>();
HashMap<String,String> map3 =newHashMap<String,String>();
HashMap<String,String> map4 =newHashMap<String,String>();
map1.put("userName", "张三");
map1.put("userStatus", "大学");
map1.put("sex", "男");
map2.put("userName", "李四");
map2.put("userStatus", "高中");
map2.put("sex", "男");
map3.put("userName", "王二");
map3.put("userStatus", "博士");
map3.put("sex", "男");
map4.put("userName", "张力");
map4.put("userStatus", "小学");
map4.put("sex", "女");
list.add(map1);
list.add(map2);
list.add(map3);
SimpleAdapter adapter=newSimpleAdapter(this,list,R.layout.listview,newString[]{"userName","userStatus","sex"},newint[]{R.id.textView1,R.id.textView2,R.id.textView3});
setListAdapter(adapter);
}
// protectedvoid onListItemClick(ListView l, View v, int position, longid)
//{
//super.onListItemClick(l, v, position,id);
//System.out.println("position="+position+",id="+id);
////this.showDialog(0);
// }

}

(list.xml)

<?xml version="1.0"encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ListView
android:id="@id/android:list"//这里的ID很重要
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>

(listview.xml)

<?xml version="1.0"encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/textView1"
android:layout_width="100dip"
android:layout_height="30dip"
android:paddingTop="5dip"
android:layout_marginRight="30dip"
/>
<TextView
android:id="@+id/textView2"
android:layout_width="100dip"
android:layout_height="30dip"
android:paddingTop="5dip"
/>
<TextView
android:id="@+id/textView3"
android:layout_width="100dip"
android:layout_height="30dip"
android:paddingTop="5dip"
/>
</LinearLayout>

  

爱华网本文地址 » http://www.aihuau.com/a/25101010/27711.html

更多阅读

关于UML类图中的聚集和组合 uml类图工具

最近在研究android的开源项目FBreader,并画出了相关的用例图和类图,在类图中发现曾经自己弄懂过的聚集和组合的关系,但是要用到的时候又给忘记了,现在总结一下:其实,对于聚合和组合,如果换成英文,就很好理解了:聚合就是“has-a”,组合就是“c

Ubuntu共享WiFi(AP)给Android的方法汇总 ap链接 不能共享

计算机:acer4739Z——ubuntu12.04-LTS手机:T619——Android-2.3.5现在不少朋友都在使用Android手机,链接wifi来上网确实很方便。但是当没有无线路由的时候,就不得不想另外一个办法了。比较流行和实用的就是,利用笔记本电脑共享AP(wifi)给An

声明:《Android的ListView中的SimpleAdapter simpleadapter》为网友请勿触动我心弦分享!如侵犯到您的合法权益请联系我们删除