我在Android上有两个轮子的TimePicker。在第一个我小时的格式0 - 24,在最后我在间隔步骤中的分钟(通常是0 - 30)。
当我更改小时所有工作正常时,当我在分钟时间内设置新值时,也会更改小时数。有一种方法可以防止它吗?
这里是我设置轮子值的代码:
Class<?> classForid = Class.forName("com.android.internal.R$id");
//picker ore
Field fieldHour = classForid.getField("hour");
hourPicker = (NumberPicker) timePicker.findViewById(fieldHour.getInt(null));
hourPicker.setMinValue(startHour);
hourPicker.setMaxValue(endHour);
//picker minuti
Field fieldMinute = classForid.getField("minute");
minutePicker = (NumberPicker) timePicker.findViewById(fieldMinute.getInt(null));
minutePicker.setMinValue(0);
minutePicker.setMaxValue(numberFractionHour - 1);
float pickerInterval = 60 / numberFractionHour;
displayedMinutesValues = new ArrayList<String>();
for (int i = 0; i < 60; i += pickerInterval)
displayedMinutesValues.add(String.format("%02d", i));
minutePicker.setDisplayedValues(displayedMinutesValues.toArray(new String[0]));
提前致谢。
答案 0 :(得分:1)
使用以下代码阻止hourPicker更新。
minutePicker.setOnValueChangedListener(null);