Traversing and Scrolling Forms

Users need a way to move through forms that are more than one screen long. Devices often use arrow keys to allow users to traverse or scroll (or both). Traversal moves the focus highlight up or down one item or item element at a time. Scrolling moves smoothly through a form, often approximately a screen at a time. Traversal can result in scrolling: If a user traverses to the end of the screen, a device might scroll a new screen of information into view. Scrolling, on the other hand, does not result in traversal and therefore does not change which item has focus.

MIDP Implementors

Strongly Recommend: Java graphics bulb1_icon.gif If the user traverses to an item that is not visible, scroll the form to make it visible. Follow user focus so that the user's current item is always shown on the display.

Whether a device supports traversal, scrolling, or both, users need to know when a form is more than one screen long, and when they are at the top or bottom of a form. A scroll indicator is used for this purpose.

Strongly Recommend: Java graphics bulb1_icon.gif Have the scroll indicator show users when they are at the top or bottom of the form. Turn off the up scroll indicator at the top of the form; turn off the down scroll indicator at the bottom of the form. Screenshot shows the MIDP Reference Implementation, which uses both the up and down scroll indicators only when the user is not at the top or bottom of the form.

Screenshot Scroll Indicators at the Top, Middle, and Bottom of a Form

Java graphics 07fig07.gif


Traversal

How traversal operates on a form depends on what input mechanisms are available on it. If the device has only an Up and Down button, then traversal will move through the items on a form in the order they are presented. In some cases moving Down will actually move the traversal highlight to the right if that is where the next item is. If a device has Up, Down, Left, and Right controls, then traversal can be two-dimensional. The user can press Down or Up to move to the next row and press Right or Left to move to the next item in a row. Other devices might not support traversal. For example, a device with a touch screen might not have a way for users to move their focus one element at a time. It may give the user a way to scroll through the form, and expect the user to tap an element to give it focus.

MIDP Implementors

Strongly Recommend: Java graphics bulb1_icon.gif If your device supports traversal, make sure that the user can traverse to all of the items on the form. There should be no traps that enable a user to traverse to, but not away from, an item.

In order to avoid traps, you must resolve the interaction between using keys to traverse and using them to edit items. For example, if you want to use the Left and Right arrow keys to edit the values on an interactive gauge, then you cannot use those keys to traverse into and out of the item. In that case, you could use only Up and Down to traverse into and out of gauges. In addition to gauges, exclusive- and multiple-choice groups, pop-up choice groups, and text fields require traversal solutions that are tuned to the input keys available on the device.

Recommend: Java graphics bulb2_icon.gif Enable users to traverse to all of the items on a form using just one button so that they can use the form one-handed if necessary. For example, on a device with only Up and Down buttons, a user on the first item on a form should be able to press Down continuously to move from one item to the next to the end of the form. Pressing Right should work the same way on a device with Up, Down, Right, and Left buttons.

Scrolling

Consider: Use the device's volume key to scroll up and down if you want to support scrolling and no other button on the device is appropriate. This solution will be consistent with many device implementations of browsers.

The amount of the screen that scrolls at a time is device-dependent. Scrolling too far, though, can make it difficult for the user to know where they are on the form. They could become concerned that they have missed one or more items.

Recommend: Java graphics bulb2_icon.gif Keep at least one line of context when scrolling a form. Keeping a line of context helps users to know that they have not scrolled further than they intended.

Recommend: Java graphics bulb2_icon.gif When the user scrolls in a form, the top of the screen should display an entire item (as opposed to, for example, just the last line of a multiline element in a choice group). Note that an item includes any label associated with it. If an item is more than one screen in length, the top of the screen should display a full line of the item (as opposed to, for example, cutting off the tops of the letters). Once the item has been viewed, go to the next item.



   
Comments