New Compose Multiplatform components arrived on Composables UICheck it out →

Modifier in Compose Foundation Layout



Declare the size of the content to be exactly [size]dp width and height. The incoming measurement [Constraints] will not override this value. If the content chooses a size that does not satisfy the incoming [Constraints], the parent layout will be reported a size coerced in the [Constraints], and the position of the content will be automatically offset to be centered on the space assigned to the child by the parent layout under the assumption that [Constraints] were respected.

See [requiredSizeIn] to set a size range. See [size] to set a preferred size, which is only respected when the incoming constraints allow it.

Last updated:


dependencies {


fun Modifier.requiredSize(size: Dp)
fun Modifier.requiredSize(width: Dp, height: Dp)
fun Modifier.requiredSize(size: DpSize)

Code Example


fun SimpleRequiredSizeModifier() {
    // The result is a 50.dp x 50.dp red box centered in a 100.dp x 100.dp space.
    // Note that although a previous modifier asked it to be 100.dp x 100.dp, this
    // will not be respected. They would be respected if size was used instead of requiredSize.
            .requiredSize(100.dp, 100.dp)
            .requiredSize(50.dp, 50.dp)