从NumberPicker获取float/double

San*_*eep 2 android numberpicker

我正在尝试https://github.com/SimonVT/android-numberpicker库,参考文献是https://developer.android.com/reference/android/widget/NumberPicker.html#getValue%28%29 现在两者都是, API级别11 NumberPicker在getValue方法中返回int值,并且SimonVT numberpicker也返回int值.

但是我使用以下代码在数字选择器中设置了双值:

String[] nums = {"1","1.5","2","2.5","3","3.5","4","4.5","5","5.5","6","6.5","7","7.5","8","8.5","9"};

final NumberPicker listeningScorenp = (NumberPicker) findViewById(R.id.listeningScore);
listeningScorenp.setMaxValue(nums.length-1);
listeningScorenp.setMinValue(0);
listeningScorenp.setWrapSelectorWheel(false);
listeningScorenp.setDisplayedValues(nums);
Run Code Online (Sandbox Code Playgroud)

现在我不知道如何从NUmberPicker中检索float/double值.

Ran*_*ndy 5

我刚用你的代码测试过.getValue()实际上返回所选项目的索引(仅当您设置显示的值时).所有你需要做的就是解析字符串,你会得到你想要的.

String[] nums = {"1","1.5","2","2.5","3","3.5","4","4.5","5","5.5","6","6.5","7","7.5","8","8.5","9"};
int index = listeningScorenp.getValue();
String val = nums[index];
float selectedFloat = Float.parseFloat(val);
Run Code Online (Sandbox Code Playgroud)