我试图列出哈希映射的所有值:
item1 value1第二条value2...
要做到这一点,我传递hashmap到另一个活动,并在另一个活动;我这样做:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.orneksayisi);
listV=(ListView)findViewById(R.id.listView1);
ourMap=(HashMap<String, Integer>) getIntent().getSerializableExtra("ornekMap");
String[] from = { "aktivite", "sayi" };
int[] to = { android.R.id.text1, android.R.id.text2 };
ArrayList<Map<String, String>> list = buildData();
SimpleAdapter adapter = new SimpleAdapter(this, list,
android.R.layout.simple_list_item_1, from, to);
listV.setAdapter(adapter);
}
public ArrayList<Map<String,String>> buildData(){
ArrayList<Map<String, String>> list = new ArrayList<Map<String, String>>();
list.add(putData("durus",ourMap.get("durus").toString()));
list.add(putData("kosma",ourMap.get("kosma").toString()));
list.add(putData("yurume",ourMap.get("yurume").toString()));
list.add(putData("dusme",ourMap.get("dusme").toString()));
list.add(putData("inme",ourMap.get("inme").toString()));
list.add(putData("cikma",ourMap.get("cikma").toString()));
return list;
}
private HashMap<String, String> putData(String name, String value) {
HashMap<String, String> item = new HashMap<String, String>();
item.put("aktivite", name);
item.put("sayi", value);
return item;
}
当我尝试这样做时,它只显示"键"值,而不显示相反的值(一列)。我怎么能显示两个值(键,值)在一行?
如何在一行中显示两个值(键,值)?
您需要使用显示多个条目的布局,请尝试使用android.R.layout.simple_list_item_2
。
SimpleAdapter adapter = new SimpleAdapter(this, list,
android.R.layout.simple_list_item_2, from, to);
(或者自己写布局)