我在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