ios - descargar - keyboard t9 iphone
UIKeyboardFrameBeginUserInfoKey y UIKeyboardFrameEndUserInfoKey (1)
El cuadro de inicio es donde el teclado está al principio de la animación: fuera de la pantalla si se muestra el teclado, o en la pantalla si el teclado está oculto. El cuadro final es donde el teclado estará al final de la animación: viceversa. Puede usar la diferencia entre ellos para escribir un único método que responda tanto a la ocultación como a la visualización del teclado.
Asegúrese también de utilizar UIKeyboardAnimationCurveUserInfoKey
y UIKeyboardAnimationDurationUserInfoKey
al animar los cambios de su vista: de ese modo, sus animaciones y las animaciones del sistema operativo estarán sincronizadas.
Otra sugerencia: La documentación que vinculó a estados, "El rectángulo contenido en las propiedades UIKeyboardFrameBeginUserInfoKey y UIKeyboardFrameEndUserInfoKey del diccionario userInfo debe usarse solo para la información de tamaño que contiene. No use el origen del rectángulo (que siempre es {0.0, 0.0}) en operaciones de intersección de rectángulo ". Al menos en el iPad en OS 3.2, esto no es verdad. Ambas rectas tienen el mismo tamaño, mientras que el origen, que está en coordenadas de pantalla, difiere entre las dos.
Puede encontrar útil esta pregunta: UIKeyboardBoundsUserInfoKey está en desuso, ¿qué usar en su lugar?
En la documentation Administrar el teclado:
UIKeyboardFrameBeginUserInfoKey La clave para un objeto NSValue que contiene un CGRect que identifica el cuadro de inicio del teclado en coordenadas de pantalla. Estas coordenadas no tienen en cuenta ningún factor de rotación aplicado a los contenidos de la ventana como resultado de los cambios de orientación de la interfaz. Por lo tanto, es posible que necesite convertir el rectángulo en coordenadas de ventana (utilizando el método convertRect: fromWindow:) o para ver las coordenadas (utilizando el método convertRect: fromView: antes de usarlo).
UIKeyboardFrameEndUserInfoKey La clave para un objeto NSValue que contiene un CGRect que identifica el cuadro final del teclado en coordenadas de pantalla. Estas coordenadas no tienen en cuenta ningún factor de rotación aplicado a los contenidos de la ventana como resultado de los cambios de orientación de la interfaz. Por lo tanto, es posible que necesite convertir el rectángulo en coordenadas de ventana (utilizando el método convertRect: fromWindow:) o para ver las coordenadas (utilizando el método convertRect: fromView: antes de usarlo).
¿Cuál es el significado de start frame
y end frame
? ¿Cuál es la diferencia entre ellos?