Android 如何在<;上设置onChange侦听器;日期选择器>&&书信电报;时间选择器>;以编程方式?

Android 如何在<;上设置onChange侦听器;日期选择器>&&书信电报;时间选择器>;以编程方式?,android,Android,我使用一个定制的对话框片段,其中包含和元素。我通过findViewById检索这个UI小部件的实例。问题是,我不知道如何为DatePicker设置侦听器来检测日期更改。TimePicker也一样 这是我的密码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dialog

我使用一个定制的对话框片段,其中包含
元素。我通过findViewById检索这个UI小部件的实例。问题是,我不知道如何为DatePicker设置侦听器来检测日期更改。TimePicker也一样

这是我的密码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dialog_fragment_layout_datetimepicker"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp"
android:orientation="vertical" >

<DatePicker
    android:id="@+id/datepicker"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

<TimePicker
    android:id="@+id/timepicker"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

<Button
    android:id="@+id/button_datepickersave"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@string/dialog_button_save"/>

</LinearLayout>
但在查看文档时,我只看到了一种方法,即DatePicker和TimePicker都是自己的对话框,并在其构造函数上设置侦听器

如何在以这种方式创建的日期选择器和时间选择器上添加侦听器?这可能吗?有没有其他方法可以做到这一点?这最好使用第三方来源吗


谢谢。

您可以使用init方法设置它,在这里您还可以设置它的初始日期/时间。看


但是我不喜欢默认的选取器,最后使用了这个

您可以使用init方法设置它,在这里您还可以设置它的初始日期/时间。看


但是我不喜欢默认的选择器,结果使用了这个

你应该使用回调接口

阅读本手册:


您应该为此使用回调接口

阅读本手册:


试试
日期选择器的这种方法:

 DatePicker.init (int, int, int, DatePicker.OnDateChangedListener);
TimePicker.setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener);
或:

对于
时间选择器

 DatePicker.init (int, int, int, DatePicker.OnDateChangedListener);
TimePicker.setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener);

尝试使用
日期选择器的此方法

 DatePicker.init (int, int, int, DatePicker.OnDateChangedListener);
TimePicker.setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener);
或:

对于
时间选择器

 DatePicker.init (int, int, int, DatePicker.OnDateChangedListener);
TimePicker.setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener);

谢谢Bojan,init()方法正是我一直在寻找的。遗憾的是,我错过了这个方法,从来没有想到它在DatePicker和Time Picker中也可用。真是帮了大忙。节省我几个小时的实验时间!谢谢Bojan,init()方法正是我一直在寻找的。遗憾的是,我错过了这个方法,从来没有想到它在DatePicker和Time Picker中也可用。真是帮了大忙。节省我几个小时的实验时间!谢谢,我将关注这些来源。但我现在正试图避免回调,因为我试图检测日期的变化并据此采取行动,在那里添加新的接口和往复似乎对我的情况来说是过火了。不过还是要谢谢你!谢谢,我将关注这些来源。但我现在正试图避免回调,因为我试图检测日期的变化并据此采取行动,在那里添加新的接口和往复似乎对我的情况来说是过火了。不过还是要谢谢你!精彩的!谢谢你,西伦奈特!精彩的!谢谢你,西伦奈特!