iPad teclado dividido

Estoy creando una aplicación similar a la aplicación iMessage del iPad que envía mensajes. Así que hay una vista de entrada anclada en la parte inferior de la vista de mensaje y la vista de accesorio de entrada cuando se muestra el teclado. Además, la vista del mensaje debe cambiarse de tamaño correctamente cuando se muestra el teclado mientras está acoplado o desacoplado.

El problema que tengo es que los datos de notificación que vienen de UIKeyboardWillChangeFrameNotification no son consistentes.

Primero, hay 3 formas en que el usuario puede desacoplar el teclado:

Presione y mantenga presionada la tecla inferior derecha, luego deslice hacia arribaPresiona y mantén presionada la tecla inferior derecha, cuando el menú aparece, selecciona "desacoplar"Presione y mantenga presionada la tecla inferior derecha, cuando el menú aparece, seleccione "dividir"

Para el caso # 1, los datos de notificación de UIKeyboardWillChangeFrameNotification son consistentes. Aquí están los datos:

userInfo = {
    UIKeyboardFrameBeginUserInfoKey = "NSRect: {{0, 0}, {768, 304}}";
}

Para los casos # 2 y # 3, los datos son inconsistentes, esto es lo que recibo:

userInfo = {
    UIKeyboardAnimationCurveUserInfoKey = 0;
    UIKeyboardAnimationDurationUserInfoKey = "0.25";
    UIKeyboardBoundsUserInfoKey = "NSRect: {{0, 0}, {768, 304}}";
    UIKeyboardCenterBeginUserInfoKey = "NSPoint: {384, 872}";
    UIKeyboardCenterEndUserInfoKey = "NSPoint: {384, 1136}";
    UIKeyboardFrameBeginUserInfoKey = "NSRect: {{0, 0}, {768, 304}}";
    UIKeyboardFrameChangedByUserInteraction = 0;
    UIKeyboardFrameEndUserInfoKey = "NSRect: {{0, -264}, {768, 304}}";
}

Lo que es extraño aquí es que cuando escucho UIKeyboardDidChangeFrameNotification bajo el caso # 2 o # 3, los datos aparecen como se esperaba:

userInfo = {
    UIKeyboardFrameBeginUserInfoKey = "NSRect: {{0, 0}, {768, 304}}";
}

¿Por qué los datos de notificación son diferentes? ¿Alguien encontró una manera clara de detectar los eventos de teclado dividido?

Respuestas a la pregunta(2)

Su respuesta a la pregunta