使 NumberPicker 字符串值可重复

Make NumberPicker string values repeatable

当我向一个方向移动时,如何使 NumberPicker 的字符串值重复出现?以下代码使 NumberPicker 成为非经常性的。当它从上行到下行时停止,反之亦然。

这是 xml 片段。

            <NumberPicker
            android:id="@+id/nu_plus_minus"
            android:layout_gravity="left|center_vertical"
            android:layout_width="@dimen/N_P_Width"
            android:layout_height="@dimen/N_P_Height"
            android:gravity="center"/>

这是我为这个选择器编写的代码。

        NumberPicker nu_plus_minus = (NumberPicker)v.findViewById(R.id.nu_plus_minus);

    String[] values = new String[2];
    values[0] = getString(R.string.plus_for_NP);
    values[1] = getString(R.string.minus_for_NP);
    nu_plus_minus.setMaxValue(values.length - 1);
    nu_plus_minus.setMinValue(0);
    nu_plus_minus.setDisplayedValues(values);
    nu_plus_minus.setWrapSelectorWheel(true);
    nu_plus_minus.setDescendantFocusability(NumberPicker.FOCUS_BLOCK_DESCENDANTS);

根据 docs 对于 setWrapSelectorWheel:

Note: If the number of items, i.e. the range ( getMaxValue() - getMinValue()) is less than the number of items shown on the selector wheel, the selector wheel will not wrap. Hence, in such a case calling this method is a NOP.

你只显示了两个值,所以我有一种预感,这就是为什么它没有像你想要的那样包装值。