Pierwszy miałem UIViewController listenning do zgłoszenia UIKeyboardWillShow dostosowania ekranu na klawiaturze. Ale za każdym razem, gdy zmieniłem klawiaturę emoji, powiadomienie nie zostało wywołane.Powiadomienie UIKeyboardWillChangeFrame nie sprawdził z Klawiatura z emotikonami
Więc zmieniłem do UIKeyboardWillChangeFrame powiadomienia jak ten
NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardChanged(notification:)), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
Wydaje się działać prawidłowo, jeśli tylko zmieni się emotikonami stukając typ klawiatury.
Jednak gdybym nacisnąć i przytrzymać, aby wybrać typ klawiatury (moja klawiatura ma więcej niż jeden język) i wybierz klawiaturę Emotikon, powiadomienie nie jest zwolniony.
Ktoś kiedyś miał coś takiego? Jakieś sugestie?
Moja aplikacja dostosowuje ekran w zależności od tego, czy klawiatura jest wyświetlana, czy nie i działa prawidłowo, gdy wybrana jest również klawiatura emoji. Czy chcesz pokazać swój kod? – TNguyen
Edytuję moje pytanie @ TPN1994. Ale tak naprawdę dodaję tylko obserwatora i działa dobrze dla innych przypadków. Myślę, że to może być problem na iOS 11, ponieważ na innych urządzeniach działa też dobrze ...:/ – GustavoAzOl
jeśli umieścisz breakpointy/instrukcje drukowania, czy widzisz, że zawsze jest tak, że nie jest wywoływany? Pamiętam, że miałem dziwny błąd, w którym albo 'UIKeyboardWillShow' lub' UIKeyboardWillHide' nie był wywoływany, mimo że ich obserwowałem. Niestety, nie pamiętam, który to był. Niemniej jednak, wysłanie całego kodu może pomóc. – TNguyen