Estoy usando un datepicker en Android para permitir que el usuario elija la fecha. Quiero que haga una cosa si el usuario elige una fecha y la establece (tengo que funcionar bien) y luego borrar un cierto campo de texto si el usuario presiona el botón cancelar en el selector de fecha (abre el selector de fecha pero luego cancela de eso).¿Cómo hacer un oyente para un botón para cancelar la fecha en Android?
La forma en que he estado tratando es haciendo una
private DatePickerDialog.OnCancelListener mDateCancelListener =
new DatePickerDialog.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
timeClear(); //method that clears text field
}
};
entonces lo hago
TimePickerDialog timeDialog = new TimePickerDialog(this,
mTimeSetListener,
c.get(Calendar.HOUR),
c.get(Calendar.MINUTE),
false);
timeDialog.setOnCancelListener(mTimeCancelListener);
para unir el oyente.
Mi problema es que el oyente funciona si el usuario presiona el botón Atrás, pero no si presiona el botón cancelar. Intenté usar un oyente de descarte, y eso funciona, ¡excepto por el hecho de que se apaga incluso si configuro o cancelo el datepicker!
¿Qué debo hacer para que algo suene si y solo si presiono el botón cancelar en mi selector de fecha?
Estoy tratando de hacer exactamente lo mismo pero con el selector de fecha. En la solución propuesta a continuación, la aplicación se bloquea porque .getButton (TimePickerDialog.BUTTON_NEGATIVE) devuelve nulo. ¿Alguien tiene una solución para esto? –
Compruebe esto [1]: http://stackoverflow.com/questions/2928902/can-we-get-cancel-click-listerner-of-datepicker-dialog – W00di