Альтернативное решение для необходимости связать идентификатор клиента с выбранным элементом.
Чтобы иметь простой селектор с текстом, который вы вызываете, используйте ресурсы массива. Установите Spinner в XML
<Spinner android:id="@+id/spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/colors"/>
Если вам нужно больше данных, связанных с вращателем, вы можете использовать объекты для заполнения счетчика.Функциональность ArrayAdapter по умолчанию заключается в вызове toString () для любого объекта и передаче его в представление.
if (item instanceof CharSequence) {
text.setText((CharSequence)item);
} else {
text.setText(item.toString());
}
Вы можете реализовать toString () в своем объекте, и он будет правильно отображаться в счетчике.Затем, чтобы получить данные из массива, вы можете добавить обработчик в ItemSelected и получить объект обратно из начального массива или ArrayAdapter.
ArrayAdapter adapter = new ArrayAdapter(activity, android.R.layout.simple_spinner_item, arrayOfObjects);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
{
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
Log.d(arrayOfObjects[position]._id);
}
});