3

如何将 Android 设置TimePickerDialog为使用 15 分钟间隔?

我需要以编程方式创建选择器,如下所示,因此涉及 XML 中的时间选择器的解决方案(例如这里:Android - TimePicker minutes to 15)将不起作用。

new TimePickerDialog(getActivity(), t, hour,minute, false).show();

问题是似乎没有办法在TimePicker .setOnTimeChangedListener()创建时间选择器时传入一个新函数。

是否可以使用新的 TimePIckerDialog 构造函数并使用 15 分钟间隔?

4

3 回答 3

2

所有相关答案都需要您设置一个 OnTimeChangedListener。我的解决方案是扩展 android TimePicker,并修改它的构造函数:

// minute
mMinuteSpinner = (NumberPicker) findViewById(R.id.minute);
mMinuteSpinner.setMinValue(0);
mMinuteSpinner.setMaxValue(3);
mMinuteSpinner.setDisplayedValues(new String[]{"0", "15", "30", "45"});
mMinuteSpinner.setOnLongPressUpdateInterval(100);
mMinuteSpinner.setFormatter(NumberPicker.getTwoDigitFormatter());

所以你可以有你想要的间隔。

于 2013-07-02T11:17:50.187 回答
2

覆盖 onTimeChanged 方法

TimePickerDialog timePickerDialog = new TimePickerDialog(this, listener, 1, 1, true) {
        @Override
        public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
            ...
        }
};

timePickerDialog.show();
于 2012-09-05T13:11:53.030 回答
0

从这篇文章和其他文章中收集部分解决方案,我相信这里的解决方案勾选了所有用于显示 a 的框,并TimePickerDialogNumberPicker.

于 2013-11-14T05:23:36.663 回答