我有一个名为Customenum
的枚举类public enum CustomEnum
{
A("lbl1"),
B("lbl2"),
C("lbl3"),
D("lbl4");
private final String label;
CustomEnum(String label)
{
this.label = label;
}
public String getLabel()
{
return label;
}
}
我想创建一个包含枚举标签的列表,之后我将列表设置为ArrayAdapter
的Spinner
,这就是我的工作方式:
List<CustomEnum> myList = Arrays.asList(CustomEnum.values());
ArrayAdapter adapterStation = new ArrayAdapter(getActivity(), android.R.layout.simple_spinner_dropdown_item, myList);
从Spinner
列表是"A" "B" "C" "D"
而不是"lbl1" "lbl2" "lbl3" "lbl4"
,该怎么做?
您必须在列表中检索标签并将其存储。
List<String> myList = Arrays.stream(CustomEnum
.values())
.map(e -> e.getLabel())
.collect(Collectors.toList());
编辑:理想的方法是覆盖toString()
返回标签。