-1

次のようにハッシュマップのすべての値をリストしようとしています:

item1 値1 item2 値2 . . .

これを行うには、ハッシュマップを別のアクティビティに渡します。私は次のようなことをします:

 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;
      }

これを試すと、「キー」値のみが表示され、反対の値(1列)は表示されません。2つの値(キー、値)を連続して表示するにはどうすればよいですか?

4

1 に答える 1

2

2つの値(key、value)を続けて表示するにはどうすればよいですか?

複数のエントリを表示するレイアウトを使用する必要があります。を使用してみてくださいandroid.R.layout.simple_list_item_2

SimpleAdapter adapter = new SimpleAdapter(this, list,
        android.R.layout.simple_list_item_2, from, to);

(または独自のレイアウトを作成します。)

于 2013-01-22T17:19:50.793 に答える