example create ios cocoa-touch event-handling datepicker

ios - create - UIDatePicker: no es posible seleccionar el valor predeterminado



uidatepicker swift 4 (2)

Creé UIDatePicker y agregué el objetivo para el evento UIControlEventValueChanged . El valor predeterminado del selector de fecha se establece en la fecha actual.

El selector de fecha se muestra cuando hago clic en el campo de texto. A continuación, el usuario puede seleccionar la fecha, hacer clic fuera del controlador de visualización con el selector de fecha, desaparece y el campo de texto se establece en la fecha seleccionada.

El problema es cuando el usuario desea seleccionar la fecha actual (predeterminada). Es necesario cambiar el valor desde y volver al valor predeterminado. Es porque el selector de fecha activa el evento UIControlEventValueChanged . También quiero dejar que el usuario decida si quiere completar el valor de la fecha (si solo hace clic fuera del control de visualización con selector de fecha).

¿Cómo es posible dejar que el usuario seleccione el valor predeterminado del selector de fecha sin cambiar el valor y volver al valor predeterminado?


¿Es aceptable que solo establezca la fecha en el campo de texto tan pronto como se muestre el campo de texto? De esta forma, el usuario no necesita hacer nada si la fecha actual es lo que quiere en el campo de texto.

Si el campo de texto debe comenzar en blanco por algún motivo, entonces puede mostrar la fecha actual en el campo de texto tan pronto como el usuario toque primero dentro de él (es decir, al mismo tiempo que muestra el UIDatePicker).

Si ninguno de estos es aceptable, ¿ha intentado establecer una acción de destino para otro evento de control, como UIControlEventTouchDown / UIControlEventDragInside / UIControlEventEditingDidBegin ?


Agregue un miembro privado llamado _isDateChanged , cuando se UIControlEventValueChanged acción de evento _isDateChanged , UIControlEventValueChanged en YES . Cuando desaparezca el Popover, compruebe si _isDateChanged es YES ; si no, active una acción de cambio.