A rotary controller is a knob and surrounding buttons in the center console of an automobile used to control the head unit. A rotary controller must support these functions:
- Nudge in four directions (up, down, left, and right)
- Rotate clockwise and counterclockwise
- Center button
- Back button
A rotary controller might support diagonal nudges. Rotation must be limitless with detents (clicks). There can either be a button in the center or the rotary knob itself can act as a button. There are typically additional buttons surrounding the rotary knob, for example, Home, Media, Phone, and navigation (map).
A rotary controller works like this:
- Nudging is used for coarse navigation in the user interface. The screen is
partitioned into several rectangular regions, referred to as
FocusAreas
. Nudging navigates between theseFocusAreas
. - Rotation is used for fine navigation. Rotation navigates through the
focusable views in a
FocusArea
in the same order as the Tab key. - Center button takes action on the focused view, for example to press a button.
- Back button typically functions as usual in Android, an exception being direct manipulation, described below.
Nudge history ensures that nudging right and then left takes you back where you were. This can be configured by the OEM.
When configured by the OEM, attempting to nudge off the edge of the screen triggers a system-wide action, for example Back.
If the most recent interaction took place through touch rather than the rotary controller, any nudge, rotate, or press of the Center button starts rotary mode by focusing a view, but is typically ignored. Subsequent actions function as described above, moving focus or taking action.
If a SeekBar
is focused when the Center button is pressed,
direct manipulation (DM) mode starts. In this mode, rotation manipulates the
SeekBar
rather than navigating. The Back button is used to exit DM mode.
Other views that support DM mode can use nudging as well as rotation to manipulate the view.
For example, a map view can use rotation to zoom and nudging to pan (scroll) the map.
To learn more, see: