-1

ArrayListカスタムオブジェクトがあります。このカスタム オブジェクトには zoneCode(Integer) と zoneName(String) が含まれています。このデータを Spinner に設定して、zoneName がリストに含まれるようにし、onItemSelected対応する選択の zoneCode を取得できるようにします。それはどのように可能ですか?

4

3 に答える 3

0

zoneNameとzoneCodeの両方のデータが配列リストにあり、選択したアイテムの位置を取得する方法を知っているため。はいの場合、次のようにzoneCodeを取得できます。

zoneCode[position];
于 2012-12-21T10:14:26.593 に答える
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);
于 2012-12-21T12:02:19.880 に答える
0

zoneCod.get(position) を試してください

 spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int   
    position, long id) {
            zoneCod.get(position);
      }
}
于 2012-12-21T10:09:51.643 に答える