2016-08-16 106 views
2

我正在制作一个号码选取器对话框,其中包含2个号码选择器,年份和月份。我想表明从0这两个号码拾取一些默认值,除了0已关闭 - 设置NumberPicker默认值

enter image description here

代码::

final NumberPicker numberPickerYear = (NumberPicker) expDialog.findViewById(R.id.numberPickerYears); 
    final NumberPicker numberPickerMonth = (NumberPicker) expDialog.findViewById(R.id.numberPickerMonths); 

    numberPickerYear.setMaxValue(35); 
    numberPickerYear.setMinValue(0); 
    numberPickerYear.setWrapSelectorWheel(true); 

    numberPickerMonth.setMaxValue(11); 
    numberPickerMonth.setMinValue(0); 
    numberPickerMonth.setWrapSelectorWheel(true); 
+0

做你试过numberPickerYear.setValue(9); – Rahul

+0

首先搜索谷歌。老问题 –

回答

4

默认情况下,NumberPicker中的maxValue和minValue为0.因此,在使用setValue之前,需要设置maxValue和minValue。

numberPickerMonth.setValue(defaultQuanity); 
+0

谢谢!工作:) –

2

仔细阅读:

空隙的setValue(int值) 设置数量拾取器的当前值。

  1. 如果参数小于getMinValue()getWrapSelectorWheel()是假的当前值设置为 getMinValue()值。
  2. 如果参数小于getMinValue()getWrapSelectorWheel()为真,则当前值设置为 getMaxValue()值。
  3. 如果参数小于getMaxValue()getWrapSelectorWheel()为false,则当前值设置为 getMaxValue()值。
  4. 如果参数小于getMaxValue()getWrapSelectorWheel()为真,则当前值设置为 getMinValue()值。
final NumberPicker numberPickerYear = (NumberPicker) expDialog.findViewById(R.id.numberPickerYears); 
    final NumberPicker numberPickerMonth = (NumberPicker) expDialog.findViewById(R.id.numberPickerMonths); 

    numberPickerYear.setMaxValue(35); 
    numberPickerYear.setMinValue(0); 
    numberPickerYear.setWrapSelectorWheel(true); 
    numberPickerYear.setValue(17);// here to set default value of 

    numberPickerMonth.setMaxValue(11); 
    numberPickerMonth.setMinValue(0); 
    numberPickerMonth.setWrapSelectorWheel(true); 
    numberPickerMonth.setValue(5);// here to set default value of numberPickerMonth 
0

首先,你需要找到你的资源ID,并指定最大值和最小值是这样的:

final NumberPicker numberPickerYear = (NumberPicker) expDialog.findViewById(R.id.numberPickerYears); 
final NumberPicker numberPickerMonth = (NumberPicker) expDialog.findViewById(R.id.numberPickerMonths); 

numberPickerYear.setMaxValue(35); 
numberPickerYear.setMinValue(0); 
numberPickerYear.setWrapSelectorWheel(true); 

numberPickerMonth.setMaxValue(11); 
numberPickerMonth.setMinValue(0); 
numberPickerMonth.setWrapSelectorWheel(true); 

然后最后加上两个默认值是这样的:

numberPickerYear.setValue(5); 
numberPickerMonth.setValue(2);