Android - 如何以编程方式更改时间选择器模式?

12

我已经查看了这个答案,但是我想在我的 .java 类中使用 API 的 timepickerdialog(下面的代码),我能否设置 timePickerMode 属性?

    public static class TimePickerFragment extends DialogFragment
                            implements TimePickerDialog.OnTimeSetListener {

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        // Use the current time as the default values for the picker
        final Calendar c = Calendar.getInstance();
        int hour = c.get(Calendar.HOUR_OF_DAY);
        int minute = c.get(Calendar.MINUTE);

        // Create a new instance of TimePickerDialog and return it
        return new TimePickerDialog(getActivity(), this, hour, minute,
                DateFormat.is24HourFormat(getActivity()));
    }

    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
        // Do something with the time chosen by the user
    }
}

@DerGolem 时间选择器模式,它可以是_clock_或_spinner_。 - ghstefano
2
目前无法在运行时进行,你介意在 https://code.google.com/p/android/issues/list/? 提交一个新特性请求吗? - alanv
1个回答

4

我也遇到了同样的问题。后来我查看了TimePicker源代码,我认为我们无法在.java文件中更改TimePicker模式。Google在构造方法中设置了TimePicker的模式:http://prntscr.com/blkkkd


嗨,如果是这种情况,您可以在调用超级构造函数后,使用反射来更改mDelgate对象。 - Adrián Rivero

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接