UserStyleSetting.ComplicationSlotsUserStyleSetting

public final class UserStyleSetting.ComplicationSlotsUserStyleSetting extends UserStyleSetting


ComplicationSlotsUserStyleSetting is the recommended UserStyleSetting for representing complication slot configuration, options such as the number of active complication slots, their location, etc... The ComplicationSlotsOption class allows you to apply a list of ComplicationSlotOverlays on top of the base config as specified by the androidx.wear.watchface.ComplicationSlot constructor.

The ComplicationsManager listens for style changes with this setting and when a ComplicationSlotsOption is selected the overrides are automatically applied. Note its suggested that the default ComplicationSlotOverlay (the first entry in the list) does not apply any overrides. Only a single ComplicationSlotsUserStyleSetting is permitted in the UserStyleSchema.

Not to be confused with complication data source selection.

Summary

Nested types

UserStyleSetting.ComplicationSlotsUserStyleSetting.ComplicationSlotOverlay

Overrides to be applied to the corresponding androidx.wear.watchface.ComplicationSlot]'s initial config (as specified in it's constructor) when the setting is selected.

UserStyleSetting.ComplicationSlotsUserStyleSetting.ComplicationSlotOverlay.Builder

Constructs a ComplicationSlotOverlay.Builder.

UserStyleSetting.ComplicationSlotsUserStyleSetting.ComplicationSlotsOption

Represents an override to the initial androidx.wear.watchface.ComplicationSlotsManager configuration.

Public constructors

ComplicationSlotsUserStyleSetting(
    @NonNull UserStyleSetting.Id id,
    @NonNull Resources resources,
    @StringRes int displayNameResourceId,
    @StringRes int descriptionResourceId,
    @Nullable Icon icon,
    @NonNull List<@NonNull UserStyleSetting.ComplicationSlotsUserStyleSetting.ComplicationSlotsOption> complicationConfig,
    @NonNull Collection<@NonNull WatchFaceLayer> affectsWatchFaceLayers,
    @NonNull UserStyleSetting.ComplicationSlotsUserStyleSetting.ComplicationSlotsOption defaultOption
)

Constructs a ComplicationSlotsUserStyleSetting where ComplicationSlotsUserStyleSetting.displayName and ComplicationSlotsUserStyleSetting.description are specified as resources.

Inherited methods

From class UserStyleSetting
boolean
@NonNull UserStyleSetting.Option

Translates an option name into an option.

int
@NonNull String

Public constructors

ComplicationSlotsUserStyleSetting

public final ComplicationSlotsUserStyleSetting(
    @NonNull UserStyleSetting.Id id,
    @NonNull Resources resources,
    @StringRes int displayNameResourceId,
    @StringRes int descriptionResourceId,
    @Nullable Icon icon,
    @NonNull List<@NonNull UserStyleSetting.ComplicationSlotsUserStyleSetting.ComplicationSlotsOption> complicationConfig,
    @NonNull Collection<@NonNull WatchFaceLayer> affectsWatchFaceLayers,
    @NonNull UserStyleSetting.ComplicationSlotsUserStyleSetting.ComplicationSlotsOption defaultOption
)

Constructs a ComplicationSlotsUserStyleSetting where ComplicationSlotsUserStyleSetting.displayName and ComplicationSlotsUserStyleSetting.description are specified as resources.

Parameters
@NonNull UserStyleSetting.Id id

Id for the element, must be unique.

@NonNull Resources resources

The Resources from which displayNameResourceId and descriptionResourceId are loaded.

@StringRes int displayNameResourceId

String resource id for a human readable name for the element, used in the userStyle selection UI.

@StringRes int descriptionResourceId

String resource id for a human readable description string displayed under the displayName.

@Nullable Icon icon

Icon for use in the userStyle selection UI. This gets sent to the companion over bluetooth and should be small (ideally a few kb in size).

@NonNull