Tôi đang sử dụng một trình ghi ngày tháng trong Android để cho phép người dùng chọn ngày. Tôi muốn nó làm một điều nếu người dùng chọn một ngày và đặt nó (tôi có làm việc tốt) và sau đó để xóa một trường văn bản nhất định nếu người dùng nhấn nút hủy bỏ trên datepicker (mở datepicker nhưng sau đó hủy bỏ ra của nó).Làm cách nào để làm người nghe cho nút hủy ngày tháng trong Android?
Con đường tôi đã cố gắng là bằng cách làm một
private DatePickerDialog.OnCancelListener mDateCancelListener =
new DatePickerDialog.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
timeClear(); //method that clears text field
}
};
sau đó tôi làm
TimePickerDialog timeDialog = new TimePickerDialog(this,
mTimeSetListener,
c.get(Calendar.HOUR),
c.get(Calendar.MINUTE),
false);
timeDialog.setOnCancelListener(mTimeCancelListener);
để đính kèm người nghe.
Vấn đề của tôi là người nghe hoạt động nếu người dùng nhấn nút quay lại, nhưng không phải nếu họ nhấn nút hủy. Tôi đã thử sử dụng một người nghe sa thải, và điều đó có hiệu quả, ngoại trừ việc nó bị tắt ngay cả khi tôi đặt hoặc hủy bỏ datepicker!
Tôi cần làm gì để có điều gì đó xảy ra nếu và chỉ khi tôi nhấn nút hủy trên máy hẹn hò?
Tôi đang cố gắng làm điều tương tự nhưng với công cụ chọn ngày. Trong giải pháp được đề xuất bên dưới, ứng dụng gặp sự cố vì .getButton (TimePickerDialog.BUTTON_NEGATIVE) đang trả về giá trị rỗng. Có ai ngoài kia có giải pháp cho việc này không? –
Kiểm tra điều này [1]: http://stackoverflow.com/questions/2928902/can-we-get-cancel-click-listerner-of-datepicker-dialog – W00di