W przypadku iOS7 protokół UITextInputTraits
otrzymuje nowe wartości dla enum UIKeyboardAppearance
. W szczególności jestem zainteresowany zmianą keyboardAppearance
na UIKeyboardAppearanceDark
w celu dopasowania do aktualnego projektu ciemnej aplikacji.Zmiana właściwości klawiatury dla całej aplikacji
Najpierw zajrzałem do Info.plist, ale wygląda na to, że nie ma klucza pozwalającego na globalne ustawienie tej właściwości.
Moja druga myśl polegała na użyciu UIAppearance, ale niestety keyboardAppearance
nie ma dekoratora UI_APPEARANCE_SELECTOR
. Ale z jakiegoś powodu ten kod:
[[UITextField appearance] setKeyboardAppearance:UIKeyboardAppearanceDark];
prace nad iOS7, ale wywala w iOS6.
Jeszcze bardziej dziwnie następujący kod:
[[UITextView appearance] setKeyboardAppearance:UIKeyboardAppearanceDark];
nie działa w iOS7 ani iOS6.
Dobrym pomysłem może być stworzenie podklasy zarówno UITextField & UITextView, ale w ten sposób nie działa na przykład w UISearchBar.
Nie chcę tworzyć kategorii, ponieważ nie chcę sortować nadinterpretacji implementacji klas Apple i prawdopodobnie nie był to dowód na przyszłość.
Ktoś kiedykolwiek sobie z tym poradził?
Nie wygląda na to, że jest to możliwe :( http://stackoverflow.com/a/19032824/484780 –
Stworzyłem dla tego małą kategorię. Wkrótce opublikuję –