Mobile devices using touch screens have a variety of sizes and resolutions but the one thing that remains more or less constant is the average size of a fingertip which has a contact area of around 6-10mm. This makes precise positioning of objects on a touch screen, such as a cursor, a lot more difficult using a finger than it is using a stylus which has a smaller area of contact (or a mouse on a desktop machine).
This is particularly noticeable, for example, when sketching lines in a CAD application on a touch device.
My solution is to propose a “fingernail view” which is used to display the area of the screen under the finger as the finger moves across the screen. Rather than having a fixed location on the screen, the fingernail view is located slightly offset from the finger position on the screen and moves with the finger as the finger is moved over the screen. (This is simlar to the approach used for viewing text which lies under the finger on a number of touch devices).
Here is an example of the problem and the potential solution – the “Fingernail View”.
In a sketching application, here are 2 lines and a cursor shown as a cross,
When a finger is positioned on the the cursor, as shown by the sphere, it completely covers the cursor which becomes hidden from view.
Similarly, if a finger is moved over the intersection point you can no longer see the precise location of the intersection point.
A solution is to display a magnified view of the area of the screen which is hidden by the finger. As the finger is moved across the screen the user can see the area of the screen being obscured by the finger.
This mechanism, when combined with other techniques such as snapping, helps a user to locate or position items more precisely on a touch screen.
Possible enhancements include providing the ability to vary the magnification factor and/or the area covered by the fingernail view. (Of course, the grahics could be improved to look more like a magnifying lens too).
Interestingly, although originally intended as a helper for touch devices, I have also found the technique useful on traditional mouse driven desktop displays.
Try it out for yourself in KML Systems Labs at