34

(標準)NumberPickerに最後の値の後に停止するように指示する属性はありますか? たとえば、MinValue が 0 で MaxValue が 5 の場合、NumberPicker は 5 の後に繰り返されるため、ユーザーは無限にスクロールできます。

4

2 に答える 2

72

最小/最大値を設定した場合は、これを試してください:

yourNumberPicker.setWrapSelectorWheel(false);

これはあなたのために働きますか?

編集

TimePicker の場合:

timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
   public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
     if(hourOfDay>max) {
       TimePicker.setHour(max):
     }
     updateDisplay(hourOfDay, minute);
   }
});

これはテスト済みのコードではありませんが、これが実行できる方法である可能性があります。

于 2012-11-25T18:35:27.020 に答える
8

この回答は私を助けました:

public void updatePickerValues(String[] newValues){
  picker.setDisplayedValues(null);
  picker.setMinValue(0);
  picker.setMaxValue(newValues.length -1);
  picker.setWrapSelectorWheel(false);
  picker.setDisplayedValues(newValues);
}

どうやら順序が重要です。

于 2016-05-25T07:08:09.770 に答える