Ответ 1
В каком-то пошаговом руководстве используется:
Spinner mySpinner = (Spinner) findViewById(R.id.cmbClothType);
mySpinner.setAdapter(new ArrayAdapter<MyType>(this, android.R.layout.simple_list_item, MyType.values()));
Например: у меня есть перечисление с днями.
Как поместить его значения в spinner?
В каком-то пошаговом руководстве используется:
Spinner mySpinner = (Spinner) findViewById(R.id.cmbClothType);
mySpinner.setAdapter(new ArrayAdapter<MyType>(this, android.R.layout.simple_list_item, MyType.values()));
Подобно другому ответу, но вы можете использовать ArrayAdapter для заполнения на основе класса Enum. Я бы рекомендовал переопределить toString в классе Enum, чтобы значения, заполненные в spinner, были более удобными для пользователя. В деятельности:
Spinner mySpinner = (Spinner) findViewById(R.id.mySpinnerId);
mySpinner.setAdapter(new ArrayAdapter<MyEnum>(this, android.R.layout.simple_spinner_item, MyEnum.values()));
Ваш класс перечисления:
public enum MyEnum{
ENUM1("Enum 1"),
ENUM2("Enum 2");
private String friendlyName;
private MyEnum(String friendlyName){
this.friendlyName = friendlyName;
}
@Override public String toString(){
return friendlyName;
}
}