2011-11-19 21 views
0

我已經在Android上Spinner如何讓微調框在android中返回一個id?

category = (Spinner) findViewById(R.id.ev_category); 
category.setOnItemSelectedListener(new MyOnItemSelectedListener()); 
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.category_list, android.R.layout.simple_spinner_item); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
category.setAdapter(adapter); 

對於微調的資源是:

<string name="category">Choose a category</string> 
<string-array name="category_list"> 
<item>Food</item> 
<item>Art And Performance</item> 
<item>Classes</item> 
<item>Others</item> 
</string-array> 

看,我是通過實施以下方法讓我的選擇Spinner文本。它將我的選定項目文本返回到我的Spinner中。

public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 
    ev_category=parent.getItemAtPosition(pos).toString(); 
} 

我想要以下功能。如果選擇了我的微調器中的第一項,我想將值設置爲「1」,並且如果選擇了微調器中的下一項,我想將值設置爲「2」。 我該如何完成這項任務?

回答

1
public void onItemSelected(AdapterView<?> parent, 
View view, int pos, long id) { 

pos這裏的位置是不是?,把它加1,如果它的第一個項目將返回0。

如果你想字符串,然後轉換成整數的任一方法使用Integer.toString()

+0

好吧,我它正確nw ..如何啓用多個選擇相同的微調,也如何獲得值爲1,2如果我選擇了前兩個類別的項目。 – Froyo

+0

spinners被設計爲只能選擇1個項目,所以如果你想使用多個選項,你需要使用不同的方法。 –

0

字符串ü可以撥打getItemPosition = spinner.getSelectedItemPosition(); ,您可以使用(開關),它會回報你0,1,2