140
votes

I used to be able to type with my real mac keyboard after launching the iPhone Simulator. Typing with the on-screen simulator keyboard is just horrible when testing with large amounts of text.

No matter what I do, I can't get my keyboard to type anymore inside the simulator. Even if I have "Simulate Hardware Keyboard" switched ON, it just won't type anything. Can someone please tell me what I'm doing wrong? Is there no way to type using the real keyboard anymore?

12
@user189924: Please mark previous questions with accepted answers, where people helped you out. It helps the community and motivates others to answer your future questions.Alex Reynolds
All 5 of the current answers work, but the VERY BEST answer is the one currently at the bottom by @SGS.Chuck H
Hi @strange – with xCode 6 onwards, the selected answer doesn't seem to be the best approach. Would you consider re-evaluating your choice? The two answers about using the simulator's menu options and covering the keyboard shortcuts are slamor's and my own. However, if you are happy with the current choice, please keep that one.Benjohn
⇧⌘K as explained by @Benjohn stackoverflow.com/a/26715382/242933ma11hew28
Same thing happened to me and was solved this way- stackoverflow.com/a/47696048/413877Mahbub Morshed

12 Answers

261
votes

Try trashing the iPhone Simulator preferences file. When my iPhone Simulator stopped responding to keystrokes, this fixed it.

  1. Quit the simulator.
  2. Go to finder and press (command+shift+G) then navigate ~/Library/Preferences.
  3. Move com.apple.iphonesimulator.plist to the trash.
  4. Try launching your iPhone app in the simulator again.
151
votes

Deleting com.apple.iphonesimulator.plist did not help me under Xcode 6.0.1. Probably, it worked in old Xcode.

But, what works perfectly for me under Xcode 6.0.1, it is new hot Keys in iOS Simulator:

Shift-Command-K   Connect/Disconnect Hardware Keyboard
Command-K         Toggle (Show/Hide) Software Keyboard

And, you know, I really suffered for last 2 months, until found it, and it is very convenient now))

74
votes

Don't trash the iPhone simulator preference files. There's no need to do this.

Look in the simulator's menu Hardware ➔ Keyboard. The menu options are:

  1. iOS Uses Same Layout as OS X
  2. Connect Hardware Keyboard ⇧⌘K
  3. Toggle Software Keyboard ⌘K

Ensure option 2 is checked.

If it's already checked, uncheck it then check it again (you'll probably want to learn the keyboard shortcuts).

If you find that this hides the on screen keyboard, but you also want this to show, use option 3 to toggle it back on.

If rotating the simulator seems to stop the keyboard working, toggle option two off then back on – this seems to resolve it.

27
votes

I am using iOS Simulator Version 7.0. While the simulator was running I went to iOS Simulator->Reset Contents and Settings... and reset the simulator from there. That seemed to have done the trick for me. Hope that helps.

17
votes

This is because you have used changing the orientation of simulator using keyboard shortcuts. Just press cmd on the mac keyboard then start typing.

8
votes

All I needed to do was quit the simulator and launch it again

4
votes

MY PROBLEM WAS KEYBOARD IS SHOWING AND KEYSTROKES NOT DETECTING. AND I FOUND THE SOLUTION:

You don't need to quit the keyboard.

Try Hardware->Keyboard->Connect Hardware Keyboard directly

3
votes

Removing com.apple.iphonesimulator.plist worked for me too, but I had to locate it inside the hidden folder /Users/[yourusername]/Library/Preferences/

1
votes

Shell / Command-Line / Jenkins / CI:

sh "plutil -replace DevicePreferences.${deviceID}.ConnectHardwareKeyboard -bool NO $HOME/Library/Preferences/com.apple.iphonesimulator.plist"
sh "plutil -extract DevicePreferences.${deviceID} xml1 -o - $HOME/Library/Preferences/com.apple.iphonesimulator.plist"

The Device ID can be found via xcrun / simctl, based on the devoce name:

xcrun simctl list | grep ${simulatorDeviceName} | sed 's/).*(.*//;s/.*(//'
0
votes

I encountered the same problem and tried a lot of different ways which worked mostly but never for sure. Ultimately, I found this. https://stackoverflow.com/a/26057011/1463604

0
votes

If you are developing a React Native app and you cannot refresh (⌘R) or enable remote debugging (⌘D) from the iOS simulator, while other keyboard inputs work, make sure you are running a debug build configuration. You can check this with:

Product -> Scheme -> Edit Scheme -> Run -> Info -> Build Configuration -> Debug"

I got this tip from here.

0
votes

Just restart Simulator (close and open the app).