It works like this:
A spinner is similar to a dropdown list. It holds a list of items, from which the user can select one at the time. The selected item is displayed in the text box. The right side of the spinner shows a selector, by which the user can identify the spinner. When the user selects the spinner…
…a dialog appears over the current screen, displaying all the child items in the spinner list. Every item in the list is accompanied by a radio button.
the previously selected item or default item is selected. It also happens that no item is selected.
When an item is selected, the dialog disappears…
… and the selected item is displayed in the spinner element.
A spinner can be used if a user has to select an item from a predefined list. Use a spinner if there's not enough space to display the entire list of items. Spinners are frequently used in in a 'settings' screen, in combination with elements for getting input, like radio buttons, checkboxes, and time and date pickers. Radio buttons are used in a spinner to indicate only one single item can be selected.
- Saves valuable screen estate
- Presents predefined choices, helps users make a choice
- Spinners are useful for *quick* input of *accurate* data. (Michael Martinez)
- Spinner items are only visible when tapped
- Spinner dialog obscures the screen and context, might confuse the user
- Does not allow input of custom values
- Tricky to implement in some situations, I.e. Doesn't "just work" out of the box. (Michael Martinez)
- Before the user makes a selection, the first element is shown in the spinner. This leads many coders to reword the 1st element as \"select? (Peter van der Linden)