Класс KeyboardOptions
Класс KeyboardOptions собирает настройки
программной клавиатуры для текстовых полей.
Объект передают в keyboardOptions
у OutlinedTextField
и TextField.
Тип клавиатуры берут из
KeyboardType,
действие Enter - из
ImeAction,
регистр - из
KeyboardCapitalization.
Синтаксис
KeyboardOptions(
keyboardType = KeyboardType.Text,
imeAction = ImeAction.Done,
)
Параметры
| Параметр | Описание |
|---|---|
keyboardType |
Раскладка клавиатуры. Значение класса
KeyboardType.
|
capitalization |
Автоматический регистр при вводе. Перечисление
KeyboardCapitalization.
|
autoCorrect |
Включает или отключает автозамену на клавиатуре. |
imeAction |
Подпись действия на клавише ввода. Перечисление
ImeAction.
|
Пример
Давайте откроем числовую клавиатуру с действием Done:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material3.OutlinedTextField
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.text.input.ImeAction
import androidx.compose.ui.text.input.KeyboardType
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
var text by remember { mutableStateOf("12345") }
OutlinedTextField(
value = text,
onValueChange = { text = it },
keyboardOptions = KeyboardOptions(
keyboardType = KeyboardType.Number,
imeAction = ImeAction.Done,
),
)
}
}
}
На экране поле ввода, при фокусе клавиатура показывает цифры и клавишу завершения ввода.
Смотрите также
-
класс
KeyboardType,
который выбирает раскладку клавиатуры -
перечисление
ImeAction,
которое задаёт действие клавиши ввода -
перечисление
KeyboardCapitalization,
которое включает автоматический регистр -
класс
LocalSoftwareKeyboardController,
который программно показывает клавиатуру