我有一个名为CustomEnum的Enum类
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;
}
}
我想创建一个包含Enum标签的列表,之后我将列表设置为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"
,如何做到这一点?
答案 0 :(得分:1)
您必须检索标签并将他们存储在列表中。
List<String> myList = Arrays.stream(CustomEnum
.values())
.map(e -> e.getLabel())
.collect(Collectors.toList());
编辑:理想的方法是覆盖toString()
以返回标签。