Question

I just installed Xcode and iOS Simulator.

My Mac's Dvorak keyboard layout is not working when I type in the iOS Simulator.

When I type in Dvorak, it shows up in the iOS Simulator as if I was typing with the QWERTY keyboard layout.

I tried switching my Mac's keyboard layout back and forth but it didn't help.

Was it helpful?

Solution

Solution

There are two conditions required for simulating Dvorak input on the iOS simulator.

(short version)

  • In Settings > General > Keyboard > Keyboards > English > Hardware Keyboard Layout (Select Dvorak)
  • In iOS Simulator Menu > Hardware > Simulate Hardware Keyboard (Must be enabled)

(long version)

To verify:

  • In iOS Simulator Navigate to Settings > iCloud
  • Click Apple ID text field
  • Note - No software keyboard appears
  • Type qwerty on keyboard
  • Note output as below (Simulated Hardware Keyboard outputs according Dvorak layout)

Dvorak Keyboard Layout

  • Now turn off the Simulate Hardware Keyboard
  • Type qwerty on software keyboard
  • Note output as below (Supported QWERTY software Keyboard is shown, Supported Dvorak Hardware Keyboard Layout is used) With Software Keyboard ON

Why this Behavior

(long version)

After some investigation I have found that the answer to this question is that the simulated DVORAK keyboard is working exactly as intended. Only software keyboards can appear in the simulator or on the device. Dvorak is listed as a hardware keyboard, which means that when the correct option is selected one can type using the same keyboard layout as on a Dvorak keyboard.

Software Keyboard Selections (Dvorak is not an option)

Software Keyboard Layout

Scroll to the bottom to see Dvorak

Hardware Keyboard Layout

Dvorak Hardware Keyboard Support

Selecting "Simulate Hardware Keyboard" allows anyone who wants to simulate a Dvorak keyboard or has Dvorak layout on their computer (in combination with the iOS uses Same Keyboard Layout as OSX option) to type into the simulator using the Dvorak keyboard layout. However there is no software keyboard layout for Dvorak as noted above. Therefore, when this option is selected, the onscreen software keyboard is removed if one goes to a field to type in data (no Dvorak software keyboard is supported) in the simulator.

Simulate Hardware Keyboard

Based on the assertion that the keyboard shows up as QWERTY layout then one can assume that the Simulate Hardware Keyboard is not currently selected. Selecting this option will turn on support for a simulated hardware Dvorak keyboard layout and allow one to type in the Dvorak layout.

Selected Option

When the above option is enabled the software keyboard will not be shown in the simulator at all. However the Dvorak layout is now active (if one selected Dvorak under the Hardware Keyboard Layout in the Settings > General > Keyboard area).

Hardware Option is ON

Apple's Explanation iOS: Using International Keyboards

Activating Dvorak is a hardware keyboard simulation only. Simulating Keyboards in iOS simulator

Conclusion

The result of this test indicates that Dvorak is NOT a supported Software Keyboard. The selected software keyboards will always be shown. However the Dvorak hardware keyboard layout is supported. When Dvorak is selected as an hardware keyboard layout option on the simulator or device the output will be Dvorak.

OTHER TIPS

For me (Simulator Version 7.0 (463.9.4.2)) as long as the correct hardware keyboard layout is selected, I do not need to enable "Simulate Hardware Keyboard".

Dvorak keyboard works perfectly once I go into the settings app and choose that as the hardware layout.

It's far too finicky to get the iOS Simulator to work with Dvorak.

And if you ever do get it working, it will be broken again the next time you Reset the simulator.

My solution is to use Keyboard Maestro to send the Dvorak character at the same position as the QWERTY key whenever the iOS Simulator is the active app.

So if you want to type o, set keyboard maestro to type r. The Simulator then translates this Dvorak r into a QWERTY o.

Confusing, but it always works and does not require changing settings in the Simulator.

enter image description here

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top