Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Keyboard Tip for the iOS Simulator

DZone's Guide to

Keyboard Tip for the iOS Simulator

I wanted the virtual keyboard to show up. In order to actually get that keyboard, you need to disable “Connect Hardware Keyboard” in the Hardware menu.

· Mobile Zone
Free Resource

Download this comprehensive Mobile Testing Reference Guide to help prioritize which mobile devices and OSs to test against, brought to you in partnership with Sauce Labs.

I’ve been using the iOS Simulator for a few years now and never noticed this trick before. Thanks go to Tommy-Carlos Williams for teaching me this. Have you ever noticed that sometimes when you type in a form field inside the simulator that the virtual keyboard doesn’t slide up? For example:

iOS Simulator Screen Shot Jun 24, 2015, 2.53.18 PM

Notice the cursor in the field? I can type there, but the virtual keyboard isn’t up. It just so happened I wanted the virtual keyboard to show up. I was testing a bug in an app where users hitting the Go button were ending up opening an action that was tied to another button. In order to actually get that keyboard, you need disable “Connect Hardware Keyboard” in the Hardware menu:

Screen_Shot_2015-06-24_at_2_55_27_PM

Doing so gets you the virtual keyboard – and obviously requires you to use it:

iOS Simulator Screen Shot Jun 24, 2015, 2.56.51 PM

I’ll add that I’ve seen some gremlins with this. Just a few minutes ago I was testing with a web page search form and it consistently let me type with the keyboard and showed a virtual keyboard, but now I can’t reproduce it so… yeah… gremlins. Any way, hope this tip helps.

Analysts agree that a mix of emulators/simulators and real devices are necessary to optimize your mobile app testing - learn more in this white paper, brought to you in partnership with Sauce Labs.

Topics:
mobile ,ios

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}