Как настроить раскладку фукуса клавиатуры на Android? - PullRequest
0 голосов
/ 21 июня 2020

Это мой вид увеличения на клавиатуре, когда я щелкаю текст редактирования. введите описание изображения здесь

Проблема:

  1. Он слишком большой, достаточно лишь одной небольшой полосы текста редактирования.
  2. Клавиатура иногда плавает иногда стыковка не знаю что управляет им.
  3. Нет необходимости в этой кнопке sh и зеленой линии
  4. Что такое функция обратного вызова после завершения ввода

Это метод запросить всплывающее окно программной клавиатуры

    public void editText(){
       Toast.makeText(mContext, "Editing Text",Toast.LENGTH_SHORT).show();
       InputMethodManager imm = (InputMethodManager)getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
       mEditText.setVisibility(VISIBLE);
       mEditText.requestFocus();
       mEditText.setText(mText);
       imm.showSoftInput(editText, InputMethodManager.SHOW_FORCED);
    }

Свойства редактируемого текста

<EditText
    android:id="@+id/edit_text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom"
    android:hint="annotation text"
    android:inputType="text"
    android:textSize="14sp"
    android:visibility="gone"/>

1 Ответ

0 голосов
/ 21 июня 2020

Это макет по умолчанию при изменении ориентации устройства на альбомную.

Добавьте

android:imeOptions="flagNoExtractUi|flagNoFullscreen"

, чтобы отключить полноэкранный режим редактирования

<EditText
    android:id="@+id/edit_text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom"
    android:imeOptions="flagNoExtractUi|flagNoFullscreen"
    android:hint="annotation text"
    android:inputType="text"
    android:textSize="14sp"/>

flagNoExtractUi Используется для указания того, что IME не должен отображать извлеченный текстовый интерфейс пользователя. Для методов ввода, которые могут быть полноэкранными, часто в ландшафтном режиме, это позволяет уменьшить их размер и позволяет отображать часть приложения позади. Хотя, вероятно, будет ограниченный доступ к приложению, доступному от пользователя, это может сделать использование (в основном) полноэкранного IME менее неприятным. Обратите внимание, что, когда указан этот флаг, IME может не быть настроен для отображения текста, поэтому его следует использовать только в тех случаях, когда это не требуется.

flagNoFullscreen Используется для запроса, чтобы IME никогда go не переходил в полноэкранный режим. Приложения должны знать, что этот флаг не является гарантией, и не все IME будут его уважать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...