Problem

Not all functions for a page can or should be presented on the screen. A method must be provided to access these optional functions.

Solution

By selecting a key, small on-screen element, or performing a gesture, an option menu is displayed with content relevant to the current state of the application.

Softkeys are the archetypical version of this. Single actions that take place from a softkey (such as "Cancel") are not a Revealable Menu since they are visible, and might be considered a Fixed Menu. There are many cases where the two menu access systems overlap, or switch back and forth depending on context.

Variations

SK style. Pull up list of options. Argue that Android is THIS! Layout unimportant.

Subvariant - "more" either SK style with menus to the side (scrolling does not count), or Android click-for-more, which also pulls up a different sort of display for the next set...

Is there another variant, or... not so much? Or are variations between momentary (SK, Menu key) or continuous actions (drag to open, like Pre, etc.)

Interaction Details

*** Android has this. Action opens it. - SKs and things like Bada (visible item, with label maybe, but NOT the menu itself) are variants of this. Also think about weird pullout strips like Pre has. ***

Presentation Details

CLOSED, button only....

Closed, on-screen tab and button...

If the design has no on-screen visibility, and no dedicated button is provided, consider adding a visible component at page load, or during a training period when the device is first accessed, to train the user that the feature exists.

Within the opened menu, items should be displayed as text, and use supporting iconic elements only when there is room. Most Softkey-like menus are vertical and designed for text density, and do not work well with icons.

Options that cannot be used should be "grayed out" to make them appear inaccessible. Leaving them in the list is helpful as it teaches the user what sort of actions are available in the list.

Display Accesskey indicators for each item with an associated Accesskey. Do not display these for devices that do not have hardware keyboards or keypads.

Drilldown indicator for multiple levels of menu...

Open menu as tree or as layer... if the latter, only one level while trees can go several.

Antipatterns

Within the menu, only allow access to options that can be used.

Examples