# fitInside

Common/AllAndroid/JVM

## Functions summary

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/Modifier` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/Modifier.https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/fitInside.modifier#(androidx.compose.ui.Modifier).fitInside(androidx.compose.ui.layout.RectRulers)(rulers: https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/RectRulers)` Fits the contents within `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/package-summary#(androidx.compose.ui.Modifier).fitInside(androidx.compose.ui.layout.RectRulers)`. | Cmn |

## Functions

### Modifier.fitInside

Cmn Artifact: [androidx.compose.foundation:foundation-layout](https://developer.android.com/jetpack/androidx/releases/compose-foundation) [View Source](https://cs.android.com/search?q=file:androidx/compose/foundation/layout/RulerAlignment.kt+function:fitInside) Added in [1.9.0](https://developer.android.com/jetpack/androidx/releases/compose-foundation#1.9.0)

```
fun Modifier.fitInside(rulers: RectRulers): Modifier
```

Fits the contents within `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/package-summary#(androidx.compose.ui.Modifier).fitInside(androidx.compose.ui.layout.RectRulers)`. This only works when `https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Constraints` have `https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Constraints#hasFixedWidth()` and `https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Constraints#hasFixedHeight()`. This can be accomplished, for example, by having `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/size.modifier#(androidx.compose.ui.Modifier).size(androidx.compose.ui.unit.Dp)`, or `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/fillMaxSize.modifier#(androidx.compose.ui.Modifier).fillMaxSize(kotlin.Float)`, or other size modifier before `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/fitInside.modifier#(androidx.compose.ui.Modifier).fitInside(androidx.compose.ui.layout.RectRulers)`. If the `https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Constraints` sizes aren't fixed, `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/fitInside.modifier#(androidx.compose.ui.Modifier).fitInside(androidx.compose.ui.layout.RectRulers)` will size the child to the `https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Constraints` and try to center the content within `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/package-summary#(androidx.compose.ui.Modifier).fitInside(androidx.compose.ui.layout.RectRulers)`.

```kotlin
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fitInside
import androidx.compose.foundation.layout.fitOutside
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.layout.WindowInsetsRulers.Companion.NavigationBars
import androidx.compose.ui.layout.WindowInsetsRulers.Companion.SafeContent
import androidx.compose.ui.layout.WindowInsetsRulers.Companion.StatusBars

Box(Modifier.fillMaxSize()) {
    // Drawn behind the status bar
    Box(Modifier.fillMaxSize().fitOutside(StatusBars.current).background(Color.Blue))
    // Drawn behind the navigation bar
    Box(Modifier.fillMaxSize().fitOutside(NavigationBars.current).background(Color.Red))
    // Body of the app
    Box(Modifier.fillMaxSize().fitInside(SafeContent.current).background(Color.Yellow))
}
```

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/fitOutside.modifier#(androidx.compose.ui.Modifier).fitOutside(androidx.compose.ui.layout.RectRulers)` |   |