DynamicComplicationText


Note: As of July 10, 2024, watch faces must use the Watch Face Format in order to be installed on new watches that launch with Wear OS 5 pre-installed. Learn more about the user-facing changes in this Help Center article.

Additionally, starting in early 2025 (specific date to be announced during Q4 2024), all new watch faces published on Google Play must use the Watch Face Format.

@RequiresApi(value = 33)
class DynamicComplicationText : ComplicationText


A ComplicationText where the system evaluates a DynamicString. By the time this reaches the watch face's Renderer, it'll have been converted to a plain ComplicationText.

Summary

Public constructors

Creates a DynamicComplicationText with no fallbackValue for API levels that are known to support dynamic values.

DynamicComplicationText(
    dynamicValue: DynamicBuilders.DynamicString,
    fallbackValue: CharSequence
)

Public functions

open operator Boolean
equals(other: Any?)
open Instant
getNextChangeTime(afterInstant: Instant)

Returns the next time after afterInstant at which the text may change.

open CharSequence
getTextAt(resources: Resources, instant: Instant)

Returns the text that should be displayed for the given timestamp.

open Int
open Boolean
open Boolean
returnsSameText(firstInstant: Instant, secondInstant: Instant)

Returns true if the result of getTextAt will be the same for both firstInstant and secondInstant.

open String

Public properties

DynamicBuilders.DynamicString

The DynamicString which will be evaluated into a value dynamically.

CharSequence

Used when the system does not support dynamicValue.

Public constructors

DynamicComplicationText

Added in 1.3.0-alpha03
@RequiresApi(value = 34)
DynamicComplicationText(dynamicValue: DynamicBuilders.DynamicString)

Creates a DynamicComplicationText with no fallbackValue for API levels that are known to support dynamic values.

DynamicComplicationText

Added in 1.2.0
DynamicComplicationText(
    dynamicValue: DynamicBuilders.DynamicString,
    fallbackValue: CharSequence
)
Parameters
dynamicValue: DynamicBuilders.DynamicString

The DynamicString which will be evaluated into a value dynamically.

fallbackValue: CharSequence

Used when the system does not support dynamicValue.

This is only relevant before Build.VERSION_CODES.UPSIDE_DOWN_CAKE, use the no-fallback constructor if you target an equal or higher API level.

IMPORTANT: This is only used when the system does not support dynamicValue at all. See ComplicationData.dynamicValueInvalidationFallback for the situation where the dynamicValue cannot be evaluated, e.g. when a data source is not available.

Public functions

equals

open operator fun equals(other: Any?): Boolean

getNextChangeTime

Added in 1.3.0-alpha03
open fun getNextChangeTime(afterInstant: Instant): Instant

Returns the next time after afterInstant at which the text may change.

getTextAt

Added in 1.3.0-alpha03
open fun getTextAt(resources: Resources, instant: Instant): CharSequence

Returns the text that should be displayed for the given timestamp.

Parameters
resources: Resources

Resources from the current context

instant: Instant

The Instant at which to sample the text

hashCode

open fun hashCode(): Int

isAlwaysEmpty

Added in 1.3.0-alpha03
open fun isAlwaysEmpty(): Boolean

returnsSameText

Added in 1.3.0-alpha03
open fun returnsSameText(firstInstant: Instant, secondInstant: Instant): Boolean

Returns true if the result of getTextAt will be the same for both firstInstant and secondInstant.

toString

open fun toString(): String

Public properties

dynamicValue

Added in 1.2.0
val dynamicValueDynamicBuilders.DynamicString

The DynamicString which will be evaluated into a value dynamically.

fallbackValue

Added in 1.2.0
val fallbackValueCharSequence

Used when the system does not support dynamicValue.

This is only relevant before Build.VERSION_CODES.UPSIDE_DOWN_CAKE, use the no-fallback constructor if you target an equal or higher API level.

IMPORTANT: This is only used when the system does not support dynamicValue at all. See ComplicationData.dynamicValueInvalidationFallback for the situation where the dynamicValue cannot be evaluated, e.g. when a data source is not available.