我正在尝试使用 NumberPicker 来显示字符串数组,但是当我尝试获取当前字符串的值时,该值是数组中字符串的整数索引值,这是默认响应。
我一直在尝试使用 NumberPicker.Formatter 将实际的字符串作为值返回,而不是整数索引值。我已经实现了这个,但它似乎没有被调用。有人可以告诉我为什么会这样以及我能做些什么来解决它。提前致谢。
这是代码:
final NumberPicker npUnits = (NumberPicker) numberPickerView.findViewById(R.id.numberPicker2);
npUnits.setMinValue(1);
npUnits.setDisplayedValues(tableUnitsArray);
npUnits.setMaxValue(tableUnitsArray.length);
npUnits.setFormatter(new NumberPicker.Formatter()
{
@Override
public String format(int value)
{
ArrayList<String> stringArrayList = (ArrayList<String>) Arrays.asList(tableUnitsArray);
String defaultUnits = stringArrayList.get(value);
System.out.println("Value formatted result: " + defaultUnits);
return defaultUnits;
}
});
npUnits.setDescendantFocusability(NumberPicker.FOCUS_BLOCK_DESCENDANTS);