2016-09-30 15 views

回答

0

與適配器類 可以使用getItem(int position)方法來獲取對象在適配器的位置。

外部適配器類或如果適配器位置不匹配您的類id,然後使用類變量id,您需要這樣做。

創建一類區

public class Zones{ 
    private int id; 
    private String name; 

    public Zones(int id, String name){ 
     this.id = id; 
     this.name = name; 
    } 

    public int getId(){ 
     return id; 
    } 

    public String getName(){ 
     return name; 
    } 
} 

存放在一個列表對象

List<Zones> zonesList = new ArrayList<Zones>(); 

zonesList.add(new Zones(1, "Finland")); 
zonesList.add(new Zones(1, "Sweden")); 
zonesList.add(new Zones(1, "Finland")); 
zonesList.add(new Zones(1, "Finland")); 

的類對象在列表中得到一個類ID變量的對象,循環並檢查區對象id等於給定的id。

for(Zones mZones : zonesList){ 
    if(mZones.getId() == id){ 
    // get the object your are looking for. 
    } 
} 
0

創建模型

class Zones{ 
private int id; 
private String name; 

public Zones(int id, String name){ 
this.id=id; 
this.name=name; 
} 

public int getId(){ 
return id; 
} 

public String getName(){ 
return name; 
} 

@Override 
public String toString(){ 
return id+" - "+name; 
} 

我們設置適配器,然後

List<Zones> zonesList=new ArrayList<>(); 
zonesList.add(new Zones(1,"Name1")); 
zonesList.add(new Zones(2,"Name2")); 
zonesList.add(new Zones(3,"Name3")); 

初始化yourSpinner,

yourSpinner.setAdapter(new ArrayAdapter<>(
           this, 
           android.R.layout.simple_list_item_1, 
           zonesList 
)); 

要獲得所選擇的項目,

對於ID:

((Zones)yourSpinner.getSelectedItem)).getId(); 

對於名稱:

((Zones)yourSpinner.getSelectedItem)).getName(); 

或者乾脆使用,

yourSpinner.getSelectedItem.toString(); 
+0

使用'getItemAtPosition(指數)'在所需位置獲得特定項目 –

相關問題