We just launched Compose Examples featuring over 150+ components! Check it out →

progressSemantics

Common

Modifier in Compose Foundation

Contains the [semantics] required for a determinate progress indicator or the progress part of a slider, that represents progress within [valueRange]. [value] outside of this range will be coerced into this range.

Last updated:

Installation

dependencies {
   implementation("androidx.compose.foundation:foundation:1.8.0-alpha03")
}

Overloads

@Stable
fun Modifier.progressSemantics(
    value: Float,
    valueRange: ClosedFloatingPointRange<Float> = 0f..1f,
    @IntRange(from = 0) steps: Int = 0
): Modifier

Parameters

namedescription
valuecurrent value of the ProgressIndicator/Slider. If outside of [valueRange] provided, value will be coerced to this range. Must not be NaN.
valueRangerange of values that value can take. Passed [value] will be coerced to this range
stepsif greater than 0, specifies the amounts of discrete values, evenly distributed between across the whole value range. If 0, any value from the range specified is allowed. Must not be negative.
@Stable
fun Modifier.progressSemantics(): Modifier

Code Examples

DeterminateProgressSemanticsSample

@Composable
fun DeterminateProgressSemanticsSample() {
    val progress = 0.5f // emulate progress from some state
    Box(
        Modifier.progressSemantics(progress)
            .size((progress * 100).dp, 4.dp)
            .background(color = Color.Cyan)
    )
}

IndeterminateProgressSemanticsSample

@Composable
fun IndeterminateProgressSemanticsSample() {
    Box(Modifier.progressSemantics().background(color = Color.Cyan)) {
        Text("Operation is on progress")
    }
}
by @alexstyl