Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
161 of 502 menu
◀ ▶

Функция TextField

Функция TextField рисует однострочное или многострочное поле ввода в стиле Material3. Текст хранят в параметре value, изменения принимают в onValueChange. Состояние удобно держать через remember и mutableStateOf. Клавиатуру настраивают через KeyboardOptions.

Синтаксис

TextField( value = text, onValueChange = { text = it }, )

Параметры

Параметр Описание
value Текущая строка в поле. Должна совпадать с тем, что показывает composable.
onValueChange Лямбда вызывается при каждом изменении текста. Сюда обычно записывают новое значение в состояние.
label Подпись над полем или внутри него, когда поле в фокусе.
placeholder Подсказка, пока поле пустое и без фокуса.
keyboardOptions Тип клавиатуры и действие клавиши ввода. Принимает объект класса KeyboardOptions.
visualTransformation Преобразование отображаемого текста, например PasswordVisualTransformation для пароля.
singleLine Если true, поле не переносит строку и остаётся однострочным.

Пример

Давайте свяжем поле с переменной состояния:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material3.Text import androidx.compose.material3.TextField import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { var text by remember { mutableStateOf("abcde") } TextField( value = text, onValueChange = { text = it }, label = { Text("abcde") }, ) } } }

На экране поле с заливкой покажет строку "abcde", её можно редактировать.

Смотрите также

  • функция OutlinedTextField,
    которая рисует поле с обводкой по контуру
  • класс KeyboardOptions,
    который задаёт тип клавиатуры и действие ввода
  • класс PasswordVisualTransformation,
    который скрывает символы пароля точками
  • класс LocalSoftwareKeyboardController,
    который показывает и скрывает программную клавиатуру
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить