Xcode 6: Klawiatura nie wyświetla się w symulatorze


674

Klawiatura nie wyświetla się, gdy uruchamiam symulator i klikam w UITextView. Jak ponownie włączyć klawiaturę?

Kiedyś działało, ale teraz nie - nie wiem, co kliknąłem przez przypadek ... wszelkie wskazówki byłyby mile widziane!


93
Wystarczy nacisnąć ⌘K, aby przełączyć klawiaturę.
yazh

2
Musisz przypadkowo wyłączyć go, gdy próbujesz „wyczyścić” swój kod. :)
Gellie Ann,


1
Zgadza się, ten problem pojawił się po wyczyszczeniu okna terminalu :) Bardzo dziękuję za wskazówkę!
Nekto

3
Xcode 8 => ⌘ + Shift + K
Daniel Springer

Odpowiedzi:


1197

Miałem ten sam problem. Moje rozwiązanie było następujące:

  1. Symulator iOS -> Sprzęt -> Klawiatura
  2. Odznacz „Podłącz klawiaturę sprzętową”

Mój został sprawdzony, ponieważ korzystałem z klawiatury Mac, ale jeśli upewnisz się, że nie jest zaznaczona, klawiatura iPhone'a zawsze się pojawi.


6
Jak na ironię, klawiatura jest tam, jeśli zmienisz orientację ekranu, zobaczysz ją ukrytą poza ekranem w dolnym rogu, gdy ramka dostosowuje rozmiar i ujawnia ją na ułamek sekundy ... więc kiedy Apple ma włączoną klawiaturę sprzętową, po prostu przesuwają klawiatura jest poza ekranem, dzięki czemu jest niewidoczna. Interesujące, przypuszczam, że robią to, aby UIInputAccessoryViewnadal wyświetlał się u dołu ekranu.
Albert Renshaw

4
@AlbertRenshaw Klawiatura jest zawsze dostępna. dowolny iOS. To jest tuż pod granicami widoku. Możesz bawić się widokami i tam znajdziesz! Animacja „przesuń w górę” właśnie ją podnosi :)
João Nunes,

7
W rzeczywistości jest to naprawdę błąd: po odznaczeniu Connect Hardware Keyboardnie mogę pisać za pomocą klawiatury komputera Mac. W wersji wcześniejszej niż iOS 8 nie „symulowała klawiatury sprzętowej”, po prostu pozwalała na dodatkowe pisanie za pomocą komputera Mac.
pkamb

2
@AlbertRenshaw gdzieś w dokumentach iOS6 (powołując się na przyczynę usunięcia DidUnload) Apple wspomina, że ​​struktura UIView nie zajmuje tyle pamięci. Również posiadanie klawiatury w pamięci RAM nie stanowi problemu. Będziesz go używał w kółko. Jest to przyrost prędkości, który jest ważniejszy niż przyrost pamięci RAM!
João Nunes,

2
Aby rozwiązać ten problem ORAZ nadal móc pisać za pomocą prawdziwej klawiatury, zobacz odpowiedź Aidana Melena
DonnaLea z

345

Podczas testowania w symulatorze ios8 beta możesz przełączać się między „klawiaturą programową” a „klawiaturą sprzętową” za pomocą +K .

AKTUALIZACJA : Od wersji iOS Simulator 8.0 skrót to + +K .


8
tak naprawdę twoja odpowiedź jest świetna, a jedynym powodem, dla którego się nie wyświetla, jest to, że jest ustawiona na miękką klawiaturę, a cmd + K przełącza klawiaturę .. to odpowiada na pytanie i jest świetne .. chciałbym ci dać + 1000
Nour1991,

2
OMG, właśnie spędziłem godzinę na tym myśleniu, że program firstForeonder nie działa!
smileBot

7
⌘⇧K In Simulator v8.0 (550.1)
beryl

2
zadziałało to dla mnie ... ale nie pamiętam, kiedy nacisnąłem ⌘K, aby wyłączyć klawiaturę symulatora ....
iphondroid

to bardzo pomogło. Dzięki
Dhaval

88

Symulator -> Sprzęt -> Klawiatura -> Przełącz oprogramowanie Klawiatura powinna rozwiązać ten problem.

Symulator-> Sprzęt-> Klawiatura-> Przełącz klawiaturę oprogramowania


3
Prosta i najlepsza odpowiedź .. + 1
Gajendra K Chauhan

Twoja odpowiedź uratuj mnie :) Głosuj +
core114

55

Wygląda na to, że jest to błąd w iOS 8. Istnieją dwa rozwiązania tego problemu:

  1. Przełączaj się między klawiaturą symulatora i klawiaturą MacBooka za pomocą skrótu Command+K .

  2. Podłącz ponownie klawiaturę do symulatora:

    za. Otwórz symulator

    b. Wybierz Sprzęt -> Klawiatura

    do. Odznacz, a następnie zaznacz „ Podłącz klawiaturę sprzętową

Zrzut ekranu dla kroku 2

LUB po prostu naciśnij skrót Shift+ Command+K


@Tommy: Witaj ... kolego!
Jayprakash Dubey

Zgadzam się, że to wydaje się być błędem, przynajmniej od Xcode 8.3.3. Po Wzywam endEditing klawiatura sporadycznie przestaje się pojawiać nawet po pop kontroler widoku i załaduj go . Kiedy zauważyłem, że zachowanie było sporadyczne, stało się całkiem jasne, że nie robi tego mój kod (tak jest w 99% przypadków - przez większość czasu, kiedy myślę, że to wina Xcode, zwykle jest to robić!). W tym przypadku jestem całkiem pewien, że to błąd Xcode.
James Toomey

37

Aby włączyć / wyłączyć klawiaturę symulatora,

⌘ + K (Ctrl + k)

Aby wyłączyć wprowadzanie z klawiatury,

Symulator iOS -> Sprzęt -> Klawiatura -> Odznacz „Podłącz klawiaturę sprzętową”


29

Możesz użyć: + +,K aby wyświetlić klawiaturę na symulatorze.



14

Aby włączyć / wyłączyć klawiaturę symulatora: kliknij ⇧ + ⌘ + K, aby wyświetlić klawiaturę na symulatorze, kliknij ponownie, aby wyłączyć (ukryć) klawiaturę.


13

Trudno powiedzieć, czy jest jakiś problem z twoim kodem bez sprawdzenia go, jednak zdarza mi się to dość często w (Wersja 6.0 (6A216f)). Zwykle muszę zresetować zawartość i ustawienia symulatora i / lub zrestartować xCode, aby znów działał. Wypróbuj je i sprawdź, czy to rozwiąże problem.


reset jest rozwiązaniem!
kirander

7

Jeśli klawiatura nie wyświetla się automatycznie w symulatorze, wystarczy nacisnąć [Command + K]

lub Sprzęt -> Klawiatura -> Przełącz klawiaturę oprogramowania


5

Aby rozwiązać problem, wykonaj następujące czynności -

  1. Zamknij Xcode i symulator
  2. Naciśnij „command + shift + g” .. otworzy się okno dialogowe „przejdź do folderu”.
  3. wpisz „~ / Library / Preferences” w tym oknie dialogowym, aby przejść do folderu preferencji.
  4. Usuń „com.apple.iphonesimulator.plist” w tym folderze
  5. Gotowy. „Com.apple.iphonesimulator.plist” zostanie zregenerowany po ponownym uruchomieniu symulatora.

Alternatywnie możesz to zrobić za pomocą tylko jednego polecenia.

Otwórz terminal i odpal - 1. rm ~ / Library / Preferences / com.apple.iphonesimulator.plist

To załatwi sprawę w jednym kroku! Po prostu upewnij się, że zamknąłeś Xcode i symulator przed uruchomieniem tego.


Dzięki. Przełączanie klawiatury oprogramowania nie działało dla mnie. Ten zrobił!
TomV

Świetna odpowiedź. + dziesięć miliardów.
KeithTheBiped


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.