Touch Accuracy

An instance of UITouch exposes its location as a two-dimensional CGPoint value. Each CGPoint represents an (x, y) pair of float values. Clearly, even the tiniest fingertip is much larger than a single point on the screen. The iPhone does a great job of training users to expect and accept the approximate fidelity that results from translating a physical touch to a single point in the coordinate space of a view. Still, developers with an appreciation for user experience should pay attention to the perception of accuracy. If a user feels that input results in a loss of precision, frustration is a likely outcome.

The main considerations for touch accuracy are:

  • The size of touchable objects

  • The shape of touchable objects

  • The placement of touchable objects in relation to one another

  • The overlapping of touchable objects

Size

The size of touchable objects is an interesting problem. One of the more curious facets of a portable touch interface is that the main input device (a finger) also obfuscates the feedback mechanism (the screen). Touching a control, such as a button, should provide users with visual feedback to provide a confirmation that their intentions have been communicated to the device. So how does Apple address this issue in UIKit? They attack the issue from many angles.

First, many controls are quite large. By displaying buttons that span approximately 80% of the width of the screen, Apple guarantees that users can see portions of the button in both its highlighted 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.