---
title: "requiredSize"
description: "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."
type: "modifier"
---

<div class='type'>Compose Modifier</div>

<a id='references'></a>
<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.requiredSize(size: Dp) =
    this.then(
        SizeElement(
            minWidth = size,
            maxWidth = size,
            minHeight = size,
            maxHeight = size,
            enforceIncoming = false,
            inspectorInfo =
                debugInspectorInfo {
                    name = "requiredSize"
                    value = size
                },
        )
    )
```


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.



<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.requiredSize(width: Dp, height: Dp) =
    this.then(
        SizeElement(
            minWidth = width,
            maxWidth = width,
            minHeight = height,
            maxHeight = height,
            enforceIncoming = false,
            inspectorInfo =
                debugInspectorInfo {
                    name = "requiredSize"
                    properties["width"] = width
                    properties["height"] = height
                },
        )
    )
```


Declare the size of the content to be exactly `width`dp and `height`dp. 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.



<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.requiredSize(size: DpSize) = requiredSize(size.width, size.height)
```


Declare the size of the content to be exactly `size`. 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.



## Code Examples
### SimpleRequiredSizeModifier
```kotlin
@Composable
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.
    Box(Modifier.requiredSize(100.dp, 100.dp).requiredSize(50.dp, 50.dp).background(Color.Red))
}
```

