W mojej aplikacji na iPada umieszczam powiadomienie na klawiaturze, które przeniesie popover na określoną wysokość nad klawiaturą. Działa to dobrze z normalną klawiaturą. Ale potem w iOS 5, jeśli użytkownik wybierze klawiaturę Split, popover będzie zachowywał się niepoprawnie. Skąd mogę wiedzieć, czy użytkownik wybrał klawiaturę dzieloną, aby ustawić wysokość popover zgodnie z wyświetlaną klawiaturą?Jak sprawdzić, czy wyświetlana klawiatura jest podzielona czy normalna?
Odpowiedz
Chodzi o to, aby tego nie przemyśleć. Nic się nie zmieniło. Jeśli klawiatura znajdzie się w zadokowanej pozycji u dołu ekranu, pojawi się powiadomienie "pokaż". Jeśli opuszcza zadokowaną pozycję u dołu ekranu, otrzymasz powiadomienie "ukryj". Tak właśnie stało się przed iOS 5.
Jedyna różnica polega na tym, że zamiast opuszczać zadokowaną pozycję, ponieważ porusza się poza ekranem, może opuścić zadokowaną pozycję, ponieważ użytkownik ją oddokował. Nadal będziesz miał "hide", więc możesz przenieść swój interfejs z powrotem do swojej pozycji podstawowej. Nie musisz wiedzieć, że klawiatura jest teraz oddokowana (chociaż możesz się przekonać, że nie jest ona poza ekranem UIKeyboardDidChangeFrameNotification, jeśli naprawdę chcesz). Powodem, dla którego nie musisz wiedzieć, jest to, że kiedy klawiatura jest oddokowana/podzielona, użytkownik może być proaktywny i poruszać klawiaturą, jeśli jest to przeszkodą dla czegoś, co musi być widoczne.
W ten sposób cały stary kod sprzed systemu iOS 5 działa poprawnie. To wszystko jest bardzo sprytne.
Cześć Ganesh, dziękuję za odpowiedź, ale mam problem. Kiedy klawiatura jest widoczna/ukrywa się, układam moją pozycję UITextField nad tablicą na klucze, ale w szczególnej sytuacji, kiedy klawiatura jest widoczna teraz moje pole tekstowe w górę, w tym przypadku, jeśli użytkownik podzieli tablicę na klucze i zamknie tablicę z kluczami, moje pole tekstowe nadal będzie na górze, ponieważ nie otrzymuję powiadomienia z klawiatury, co zrobić w tej sytuacji? – CKT
Cześć chaithanya kiran T, kiedy użytkownik przełącza się z normalnej na podzieloną klawiaturę, wywoływane jest powiadomienie KeyboardWillHide. Tutaj możesz ponownie ustawić ramkę dla TextField. –
Witaj, Ganesh, jesteś rytuałem, ale to do iOS 5.0. Uaktualniłem iPada do iOS 5.1, w którym po podzieleniu klawiatury nie wywołujemy powiadomienia KeyboardWillHide. Aplet sprawił, że obsługa klawiatury z podzielonym klawiszem była bardziej skomplikowana :(:(:( – CKT
- 1. Android: jak rozpoznać, czy klawiatura jest wyświetlana, czy nie?
- 2. Wykrywanie, czy klawiatura jest wyświetlana w teście Xcode UI
- 3. Jak wykryć, czy klawiatura użytkownika jest Swype?
- 4. Klawiatura Wyświetlana pozycja zawiedlonych elementów
- 5. Jak wykryć, czy klawiatura powierzchni jest dołączona?
- 6. Jak sprawdzić, czy moja strona jest skrobana?
- 7. Jak sprawdzić, czy jest konsola?
- 8. Sprawdź, czy funkcja lub metoda jest normalna lub asynchroniczna.
- 9. Jak sprawdzić, czy pola UITextField są puste?
- 10. jak sprawdzić, czy użytkownik jest w części administracyjnej drupala?
- 11. Jak mogę sprawdzić, czy kolejka jest pusta?
- 12. Jak sprawdzić, czy alarm jest ustawiony?
- 13. Jak sprawdzić, czy DataGridViewCheckBoxCell jest sprawdzana
- 14. Jak sprawdzić, czy plik Global.asax jest wywoływany
- 15. Jak sprawdzić, czy klasa Java jest abstrakcyjna?
- 16. Jak sprawdzić, czy uchwyt pliku jest gniazdem?
- 17. Jak mogę sprawdzić, czy funkcja jest częściowa?
- 18. Jak sprawdzić, czy obiekt jest obiektem RegExp?
- 19. Jak sprawdzić, czy MySQLnd jest aktywnym sterownikiem?
- 20. Jak sprawdzić, czy podwójne jest równe NaN?
- 21. PHP: jak sprawdzić, czy klient jest lokalny?
- 22. Jak sprawdzić, czy zmienna wyliczeniowa jest ważna?
- 23. Jak sprawdzić, czy Big O jest logarytmiczny?
- 24. Jak sprawdzić, czy plik jest skompresowany gzip?
- 25. Jak sprawdzić, czy plik jest obrazkiem?
- 26. Jak sprawdzić, czy zmienna jest obiektem Moment.js?
- 27. Jak sprawdzić, czy apk jest zip wyrównany?
- 28. Jak sprawdzić, czy pojemnik jest stabilny?
- 29. Jak sprawdzić, czy jądro jest poprawnym jądrem?
Rozwiązany! Żadne powiadomienie nie zostanie wysłane, gdy klawiatura zostanie podzielona. –
hi ganesh, mam ten sam problem z klawiaturą. Układam widok według tego, czy klawiatura jest widoczna czy nie. Zaczynasz z podzieloną klawiaturą, nawet gdy otworzę tablicę na klucze Nie otrzymuję żadnego powiadomienia. Jak rozwiązałeś to? czy mógłbyś podzielić się mną tak samo. – CKT
Cześć Chaithanya Kiran, Nie musisz zmieniać układu widoków, gdy klawiatura jest podzielona, coz, podzielona klawiatura pojawia się po bokach i zajmuje bardzo mało miejsca na ekranie, jeśli naprawdę się chowa, wtedy jest to kwestią do myślenia :( –