Android hashmap按钮ID

时间:2011-04-28 12:45:35

标签: java android hashmap

我正在为每个项目制作一个项目列表和2个按钮。 例如: Item1开关 Item2 On Off

我正在使用一个hashmap,我有一个带有textview和两个按钮的xml文件。 我的问题是,当我点击一个按钮,我想知道它属于哪个项目。我不知道我将拥有多少项目,所以我重复使用相同的按钮,所以我想为每一行设置一个id。

我的xml文件看起来像这样。

 <TextView android:id="@+id/DEVICE_CELL"
     android:layout_width="180dip"
     android:layout_height="wrap_content"/>

<Button android:id="@+id/OFF_BUTTON"
android:layout_width="60dip"
android:layout_height="wrap_content" android:layout_weight="1"
android:layout_alignParentBottom="true"
android:onClick="turnOff"/>

这是我的hashmap等等。

ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
        HashMap<String, String> map = new HashMap<String, String>();

map = new HashMap<String, String>();
            map.put("device", name);
            map.put("on", "ON");
            map.put("off", "OFF");


            mylist.add(map);
    SimpleAdapter dev = new SimpleAdapter(this, mylist, R.layout.list_item,
                    new String[] {"device", "on", "off"}, new int[] {R.id.DEVICE_CELL, R.id.ON_BUTTON, R.id.OFF_BUTTON});
        list.setAdapter(dev);

1 个答案:

答案 0 :(得分:0)

Android中的每个View都可以设置“标记”。标签只是一个Java对象,因此您可以在两个按钮上的标签处设置项目,以便在OnClickListener中检索它。