tutorial life example containerviewcontroller container iphone ios uikit ios7 uistoryboard

iphone - life - ¿iOS 7 UIDatePicker altura inconsistencia?



lifecycle viewcontroller ios (4)

Me estoy topando con algo extraño cuando uso elementos UIDatePicker con Storyboards en iOS 7. En el Storyboard, el selector de fecha tiene una altura fija de 162. Sin embargo, en realidad, el elemento ocupa más espacio que eso. Así que esto

se convierte en esto:

así que tengo que mover todo lo que está debajo, adivinar y observar cuánto espacio utilizará realmente el selector de fechas. ¿Es esto un error? ¿Estoy haciendo algo mal? Para ser claros, el selector de fechas es totalmente transparente, no se puede encontrar una manera de evitarlo. El fondo blanco en la parte superior es la vista principal, y el fondo gris es el fondo del UITableView incrustado dentro de la vista del contenedor.


Establecer la propiedad clipsToBounds en YES en mi objeto UIDatePicker me ayudó.

datePicker.clipsToBounds = YES;

Para XIB puede marcar directamente la casilla de verificación para Subvistas de clips:


Este es un truco divertido que acabo de encontrar: coloque el UIDatePicker dentro de una vista dedicada con una restricción de 162 puntos de altura (agregue restricciones verticales de 0 puntos desde la parte superior e inferior del selector a esta nueva vista de supervisión). Esto parece tener el efecto de forzar al selector a mantener el tamaño de 162 puntos.

Puede agregar la opción de recortar las subvistas para asegurarse de que el UIDatePicker no escapará de su nueva prisión.

EDITAR: después de algunas pruebas más, parece que con solo agregar una restricción de altura de 162 puntos al UIDatePicker , mantendrá su "tamaño IB". Y, para responder al comentario de @ Andrew, esto es lo que se verá:


Puede cambiar el ancho y el alto simplemente dándole restricciones de ancho y alto. Sin hacer eso, el UIDatePicker solo actúa raro, he encontrado.


Puedo confirmar que el uso del UI(Date)Picker en los guiones gráficos tiene una altura diferente (162.0) que en "realidad" (216.0). Por lo tanto, debe ajustar el espacio a la vista del contenedor para que se ajuste a la altura del selector de fecha "real" o intente resolverlo mediante el diseño automático.