Как сделать слушателя для datepickers кнопки отмены в Android?

Я использую datepicker в Android для разрешения пользователю для выбора даты. Я хочу, чтобы это сделало одну вещь, если пользователь выбирает дату и устанавливает ее (у меня есть это хорошо работать) и затем очистить определенное текстовое поле, если пользователь продвигает кнопку отмены на datepicker (откройте datepicker, но затем отмените из него).

Путем я пробовал, путем создания a

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);

присоединить слушателя.

Моя проблема состоит в том, что слушатель работает, если пользователь продвигает кнопку "Назад", но не, если они продвигают кнопку отмены. Я пытался использовать отклонить слушателя, и это работает, за исключением того, что это уходит даже, установил ли я или отменяю datepicker!

Что я должен сделать так, что-то уходит, если и только если я продвигаю кнопку отмены на своем datepicker?

8
задан Adam 26 June 2010 в 23:50
поделиться

1 ответ

Попробуйте это:

timeDialog.getButton(TimePickerDialog.BUTTON_NEGATIVE).setOnClickListener(mTimeCancelListener);

(Вам придется изменить mTimeCancelListener для реализации DialogInterface.OnClickListener вместо OnCancelListener)

0
ответ дан 5 December 2019 в 18:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: