ios - para - emojis iphone whatsapp
Notificación de UIKeyboardWillChangeFrame no llamada con el teclado emoji (1)
Primero tuve un UIViewController escuchando la notificación de UIKeyboardWillShow para ajustar la pantalla del teclado. Pero cada vez que cambiaba al teclado emoji, no se llamaba a la notificación.
Entonces, cambié a la notificación UIKeyboardWillChangeFrame como esta
NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardChanged(notification:)), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
Parece funcionar bien si simplemente cambio a emoji tocando el tipo de teclado.
Sin embargo, si presiono y sostengo el teclado para seleccionar (mi teclado tiene más de un idioma) y selecciono el teclado emoji, la notificación no se activa.
Alguien tenía algo como esto antes? ¿Alguna sugerencia?
Solución temporal Hacky:
Puede escuchar los cambios del modo de idioma:
NotificationCenter.default.addObserver(self, selector: #selector(inputModeDidChange(_:)), name: .UITextInputCurrentInputModeDidChange, object: nil)
Y busca emojis:
if([[UITextInputMode currentInputMode].primaryLanguage isEqualToString:@"emoji"]) // layout again