Метод imePadding
Метод imePadding интерфейса
Modifier
добавляет нижний отступ на высоту
WindowInsets.ime, пока открыта клавиатура.
Часто ставят на корневой столбец формы ввода.
Синтаксис
Modifier.imePadding()
Пример
Давайте обернём поле ввода отступом под IME:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.imePadding
import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.Text
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
var field by remember { mutableStateOf("12345") }
Column(
modifier = Modifier
.fillMaxSize()
.imePadding(),
) {
Text(text = "abcde")
OutlinedTextField(
value = field,
onValueChange = { field = it },
)
}
}
}
}
На экране при открытии клавиатуры столбец сдвинется вверх, поле останется видимым.
Смотрите также
-
метод
windowInsetsPadding,
любые WindowInsets -
метод
systemBarsPadding,
отступы статус-бара и навигации -
метод
verticalScroll,
прокрутка длинной формы -
метод
padding,
фиксированные отступы в dp