我在Android中使用日期选择器让用户选择日期。如果用户选择一个日期并设置它(我可以正常工作),然后在用户按下日期选择器上的取消按钮时清除某个文本字段(打开日期选择器但是取消输出)。如何在Android中为日期选择器取消按钮创建侦听器?
我一直在努力的方式是通过使
private DatePickerDialog.OnCancelListener mDateCancelListener =
new DatePickerDialog.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
timeClear(); //method that clears text field
}
};
然后我做
TimePickerDialog timeDialog = new TimePickerDialog(this,
mTimeSetListener,
c.get(Calendar.HOUR),
c.get(Calendar.MINUTE),
false);
timeDialog.setOnCancelListener(mTimeCancelListener);
附加监听器。
我的问题是,如果用户按下后退按钮,侦听器将工作,但如果他们按下取消按钮则不会。我尝试了使用dismiss监听器,并且工作,除了事实,即使它是否设置或取消日期选择器!
我需要做什么以便某些事情发生,当且仅当我按下日期选择器上的取消按钮?
我正在尝试做同样的事情,但与日期选择器。在下面提出的解决方案中,应用程序崩溃,因为.getButton(TimePickerDialog.BUTTON_NEGATIVE)返回null。有没有人有解决这个问题? – 2010-11-21 12:17:43
检查此 [1]:http://stackoverflow.com/questions/2928902/can-we-get-cancel-click-listerner-of-datepicker-dialog – W00di 2013-02-14 10:22:07