Creating Lists

This lesson teaches you to

You should also read

Lists let users select an item from a set of choices easily on wearable devices. The Wearable UI
Library includes the WearableRecyclerView class, which is a
RecyclerView
implementation for creating lists optimized for wearable devices. You can adapt to this
interface in your wearable app by creating a new WearableRecyclerView container.

You should decide whether to use a
WearableRecyclerView, based on the kind of user experience you want to provide. We recommend
using the WearableRecyclerView for a long list of simple items, such as an application launcher,
or a list contacts. Each item might have a short string and an associated icon. Alternatively,
each item might have only a string or an icon. We do not recommend using a WearableRecyclerView
for very short or complex lists. In that case use the RecyclerView or a ListView from the
regular Android support library.

By extending the existing RecyclerView class,
WearableRecyclerView APIs display a vertically scrollable list of items in a straight
list by default. You can use the WearableRecyclerView APIs to opt-in for a curved layout and
a circular scrolling gesture in your wearable apps.

Figure 1.
Default list view on Android Wear.

This lesson shows you how to use the WearableRecyclerView class to create lists in your
Android Wear apps. The document also describes how to opt-in for a curved layout
for your scrollable items, enable circular scrolling gesture, and customize the appearance of
the children while scrolling.

Adding WearableRecyclerView to an Activity using XML

The following layout adds a WearableRecyclerView to an activity, so the list is
displayed properly on both round and square devices:

Use the WearableRecyclerView.setLayoutManager() method to set layout of the
items on the screen.

// To align the edge children (first and last) with the center of the screen
mWearableRecyclerView.setEdgeItemsCenteringEnabled(true);
...
mWearableRecyclerView.setLayoutManager(
new WearableLinearLayoutManager(this));

Adding a Circular Scrolling Gesture

By default, circular scrolling is disabled in the WearableRecyclerView. If you want
to enable a circular scrolling gesture
in your child view, use the WearableRecyclerView’s
setCircularScrollingGestureEnabled() method. You can also customize the
circular scrolling gesture by defining one or both of the following:

How many degrees the user has to rotate by to scroll through one screen height.
This effectively influences the speed of the scolling —
setScrollDegreesPerScreen — the default value is set at 180 degrees.

The width of a virtual ‘bezel’ near the edge of the screen in which the
gesture will be recognized — setBezelFraction —the default value is set
at 1. This is expressed as a fraction of the radius of the view.