将TimePickerDialog设置为每隔15分钟使用一次

时间:2012-09-05 12:56:43

标签: java android android-layout

如何将Android TimePickerDialog设置为每隔15分钟使用一次?

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

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

问题是,在创建时间选择器时似乎无法传递TimePicker .setOnTimeChangedListener()的新功能。

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

3 个答案:

答案 0 :(得分:2)

覆盖onTimeChanged方法

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

timePickerDialog.show();

答案 1 :(得分:1)

所有相关答案都需要您设置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());

所以你可以得到你想要的间隔。

答案 2 :(得分:0)

从这篇帖子和其他帖子中收集部分解决方案,我相信解决方案here会勾选显示TimePickerDialog的所有方框,并在NumberPicker中显示自定义分钟增量。