Как заставить спиннер вернуть идентификатор в андроид? - PullRequest
0 голосов
/ 19 ноября 2011

Я сделал Spinner в Android:

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». Как я могу выполнить эту задачу?

Ответы [ 2 ]

1 голос
/ 19 ноября 2011
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {

pos здесь позиция, не так ли?, Добавьте 1 к ней, если она возвращает 0 для первого элемента.

, если вы хотите строку, то преобразуйте целое число в строку, используя Integer.toString()

0 голосов
/ 19 ноября 2011

в любом методе вы можете вызвать getItemPosition = spinner.getSelectedItemPosition(); и вы можете использовать (переключатель), он вернет вам 0, 1, 2.

...