Android微调器项目ID相关概率

时间:2012-12-21 10:03:00

标签: android arraylist spinner android-arrayadapter

我有一个ArrayList的自定义对象。这个自定义对象包含zoneCode(Integer)和zoneName(String),我想在Spinner中设置这个数据,以便zoneName出现在列表中onItemSelected,我可以得到相应选择的zoneCode。怎么可能?

3 个答案:

答案 0 :(得分:0)

尝试zoneCod.get(position)

 spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int   
    position, long id) {
            zoneCod.get(position);
      }
}

答案 1 :(得分:0)

由于zoneName和zoneCode的数据都在数组列表中,您知道如何获取所选项的位置。如果是,那么你可以得到如下的zoneCode:

zoneCode[position];

答案 2 :(得分:0)

覆盖自定义对象类中的toString方法,并使其返回zoneName

class CustomObject{

public String zoneName;
public int zoneCode;

public String toString(){
return zoneName;
}

}

设置微调器

CustomObject[] objects = new CustomObject[10];

//initialize each object


ArrayAdapter<CustomObject> adapter = new ArrayAdapter<CustomObject>(this,android.R.layout.simple_spinner_item, objects);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);