我有一個類通過ID與定製的微調選擇一個項目對象
zones
int id
String name
然後我創建這個類的一個數組列表,並在此設置爲arrayadapter到finaly秀(名稱字段)它微調。
但我怎麼選擇一個區域programaticaly如果我有ID
我有一個類通過ID與定製的微調選擇一個項目對象
zones
int id
String name
然後我創建這個類的一個數組列表,並在此設置爲arrayadapter到finaly秀(名稱字段)它微調。
但我怎麼選擇一個區域programaticaly如果我有ID
與適配器類 可以使用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.
}
}
創建模型區
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();
使用'getItemAtPosition(指數)'在所需位置獲得特定項目 –