Sleight of Hand

The layout of Cocoa Touch user interfaces can have a big impact on usability. This is especially true in regards to user interface controls. A control is any interface element that causes the application to do something when a user touches the screen. Standard controls include buttons, sliders, and switches. Table cells can act as controls, as can entire views.

The Multi-Touch interface on the iPhone and iPod Touch requires that applications implement virtual controls. Unlike physical knobs or buttons, virtual controls provide no tactile (or haptic) feedback. A great example of tactile feedback on a hardware control is the raised bumps on the F and J keys of a standard English QWERTY keyboard. These bumps indicate to users that their fingers are in the proper place on the keyboard. On a touchscreen, muscle memory is built with repeated use, but orientation is based purely on the portion of the screen a user is touching.

The sleight of hand anti-pattern occurs when developers change the perceived meaning of a touch-sized area of the screen by placing controls that perform different actions in the same place across views.

Apple provides a good example of the sleight of hand anti-pattern. The iPhone displays one of two screens in response to an incoming call. In both scenarios, the screen shows the name of the caller and, if available, a photograph assigned to the incoming phone number. If the iPhone is locked, users see a large slider labeled “slide to answer” and ...

Get Programming the iPhone User Experience now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.