UIKeyboardFrameBeginUserInfoKey

¿Cuál es la diferencia entre UIKeyboardFrameBeginUserInfoKey y UIKeyboardFrameEndUserInfoKey?

¿Significa eso que el "comienzo" devuelve un valor que difiere de lo que devuelve el "final"?

Gracias !

El UIKeyboardFrameBeginUserInfoKey devolverá el marco del keyboard antes de que comience la animation. El UIKeyboardFrameEndUserInfoKey devolverá el marco del keyboard una vez que la animation se haya completado. Como ejemplo, tome el siguiente fragment de código:

NSDictionary* info = [notification userInfo]; CGRect beginFrame = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue]; CGRect endFrame = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue]; 

Si beginFrame que imprimir los valores de beginFrame y endFrame en la window de debugging, puede encontrar algo como esto:

 (gdb) print beginFrame $1 = { origin = { x = 0, y = 480 }, size = { width = 320, height = 216 } } (gdb) print endFrame $2 = { origin = { x = 0, y = 264 }, size = { width = 320, height = 216 } } 

Entonces, en un iPhone, esto muestra que el keyboard se animará desde la parte inferior de la pantalla. El tamaño del keyboard no cambia (como se esperaba), pero las coorderadas y muestran la position inicial y final del keyboard.