У меня довольно простой Enum, который я использую в приложении для Gender, и мне нужна страница настроек, где пользователь может его изменить, но я не могу найти способ использовать Enum в ListPreference.Я использую PreferenceFragment для создания экрана настроек, но я не могу найти способ использовать Enum, который у меня есть, как записи и entryValues для ListPreference.Перечисление очень простое, просто ...
public enum Gender implements EnumSpinner {
MALE("Male", 0),
FEMALE("Female", 1),
NONE("Prefer not to say", -1);
private static SparceArray<Gender> genderMap = new SparceArray<>();
static {
for(Gender gender : Gender.values()) {
genderMap.put(gender.getValue(), gender);
}
}
private String name;
private int value;
Gender(String name, int value) {
this.name = name;
this.value = value;
}
public static Gender getGender(int val) { return genderMap.get(val); }
@Override
public String toString() { return name; }
public String getName() { return name; }
public int getValue() { return value; }
}
Возможно ли использовать в ListPreference или мне нужно будет создать 2 строковых массива в файле strings.xml и просто использовать его таким образом?
SideNote, EnumSpinner - это просто интерфейс, который позволяет мне использовать enum в счетчике.