Build apps faster with our new App builder! Check it out →

imePadding

Common
Android

Modifier in Compose Foundation Layout

Adds padding to accommodate the [ime][WindowInsets.Companion.ime] insets.

Any insets consumed by other insets padding modifiers or [consumeWindowInsets] on a parent layout will be excluded from the padding. [WindowInsets.Companion.ime] will be [consumed][consumeWindowInsets] for child layouts as well.

For example, if a parent layout uses [navigationBarsPadding], the area that the parent layout pads for the status bars will not be padded again by this [imePadding] modifier.

When used, the [WindowInsets] will be consumed.

Last updated:

Installation

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

Overloads


fun Modifier.imePadding(): Modifier

fun Modifier.imePadding()

Code Example

imePaddingSample

fun imePaddingSample() {
    class SampleActivity : ComponentActivity() {
        override fun onCreate(savedInstanceState: Bundle?) {
            WindowCompat.setDecorFitsSystemWindows(window, false)
            super.onCreate(savedInstanceState)
            setContent {
                Box(Modifier.background(Color.Blue).systemBarsPadding()) {
                    Box(Modifier.imePadding()) {
                        // app content
                    }
                }
            }
        }
    }
}
by @alexstyl