我有一个 DatePickerDialog。在默认配置中它工作正常。
DatePickerDialog dialog = new DatePickerDialog(
view.getContext(),
new OnDateSetListener() {
@Override
public void onDateSet(DatePicker picker, int year, int monthOfYear, int dayOfMonth) {
// do something
}
},
startDate.getYear(),
startDate.getMonth() - 1,
startDate.getDay()
);
现在我想更改按钮的文本。我尝试使用以下代码:
dialog.setButton(DatePickerDialog.BUTTON_POSITIVE, "New Label", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// do something
}
});
现在我的问题是从 datepicker 控件中获取日期。单击按钮不会调用 DateSetListener。如何通过 DateSetListener 获取日期?获取日期的另一种可能性是关于
public void onClick(DialogInterface dialog, int which) {
int year = ((DatePickerDialog) dialog).getDatePicker().getYear();
int month = ((DatePickerDialog) dialog).getDatePicker().getMonth();
int day = ((DatePickerDialog) dialog).getDatePicker().getDayOfMonth();
}
但这似乎是一种不必要的复杂方式。
对于 TimePickerDialog,这种替代方式将不起作用,因为我找不到获取 timepicker 控件的方法。因此我需要使用 TimeSetListener 但我找不到可能性(比如日期选择器)。
感谢您的任何回复。