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

Метод show

Метод show интерфейса контроллера, который даёт LocalSoftwareKeyboardController через current, запрашивает показ IME. Обычно клавиатура уже появляется при фокусе, show нужен, если её скрыли методом hide и нужно вернуть без повторного нажатия на поле. Перед вызовом поле должно быть в фокусе, например через requestFocus.

Синтаксис

keyboard?.show()

Пример

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

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material3.Button 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 import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.focusRequester import androidx.compose.ui.platform.LocalSoftwareKeyboardController class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { val keyboard = LocalSoftwareKeyboardController.current val focusRequester = remember { FocusRequester() } var text by remember { mutableStateOf("abcde") } OutlinedTextField( value = text, onValueChange = { text = it }, modifier = Modifier.focusRequester(focusRequester), ) Button(onClick = { focusRequester.requestFocus() keyboard?.show() }) { Text("12345") } } } }

На экране кнопка возвращает фокус на поле и поднимает программную клавиатуру.

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

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