相关疑难解决方法(0)

带有Formatter的Android NumberPicker在首次渲染时不会格式化

我有一个NumberPicker,它有一个格式化程序,可以在NumberPicker旋转或手动输入值时格式化显示的数字.这工作正常,但是当第一次显示NumberPicker并且我用setValue(0)0 初始化它时没有被格式化(它应该显示为" - "而不是0).一旦我从那一点旋转NumberPicker一切正常.

如何强制NumberPicker始终格式化 - 在第一次渲染时以及在使用键盘手动输入数字时?

这是我的格式化程序

public class PickerFormatter implements Formatter {

 private String mSingle;
 private String mMultiple;

 public PickerFormatter(String single, String multiple) {
    mSingle = single;
    mMultiple = multiple;
 }

 @Override
 public String format(int num) {
    if (num == 0) {
        return "-";
    }
    if (num == 1) {
        return num + " " + mSingle;
    }
    return num + " " + mMultiple;
 }

}
Run Code Online (Sandbox Code Playgroud)

我将格式化程序添加到选择器中setFormatter(),这是我对拾取器所做的全部操作.

    picker.setMaxValue(max);
    picker.setMinValue(min);
    picker.setFormatter(new PickerFormatter(single, multiple));
    picker.setWrapSelectorWheel(wrap);
Run Code Online (Sandbox Code Playgroud)

android formatter numberpicker android-number-picker

32
推荐指数
6
解决办法
1万
查看次数

android numberpicker用于浮点数

我们的应用程序的用户应该能够调整浮点数.目前,我在ArrayAdapter中填充了所有可能的值并将其附加到微调器上.

这个解决方案并不能满足我们的期望,因为旋转器下拉框太高了.有没有更好的办法?我在看Numberpicker - 但这似乎只适用于Integer值.

有任何想法吗?

谢谢!

android spinner numberpicker

7
推荐指数
1
解决办法
1万
查看次数

Android Numberpicker 小数点

我正在尝试在 Android 中创建一个数字选择器,但轮子只增加 1。我想增加 0.1。我在网上查过,但我发现一个格式化的浮动数组禁用了轮子。请帮助和抱歉语法,我正在学习。

android android-spinner numberpicker

6
推荐指数
2
解决办法
5511
查看次数

从NumberPicker获取float/double

我正在尝试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值.

android numberpicker

2
推荐指数
1
解决办法
4756
查看次数