Есть ли способ иметь многострочность EditTextи использовать метку действия IME «Готово» на Android 2.3?
В Android 2.2 это не проблема, кнопка ввода показывает метку действия IME «Готово» ( android:imeActionLabel="actionDone") и закрывает мягкий ввод при нажатии.
При настройке EditTextдля многострочного режима Android 2.3 удаляет возможность отображать действие «Готово» для клавиатуры мягкого ввода.
Мне удалось изменить поведение кнопки ввода мягкого ввода с помощью a KeyListener, однако кнопка ввода по-прежнему выглядит как клавиша ввода.
Вот декларация EditText
<EditText
android:id="@+id/Comment"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginBottom="0dp"
android:lines="3"
android:maxLines="3"
android:minLines="3"
android:maxLength="60"
android:scrollHorizontally="false"
android:hint="hint"
android:gravity="top|left"
android:textColor="#888"
android:textSize="14dp"
/>
<!-- android:inputType="text" will kill the multiline on 2.3! -->
<!-- android:imeOptions="actionDone" switches to a "t9" like soft input -->
Когда я проверяю inputTypeзначение после загрузки настройки представления содержимого в действии, оно отображается как:
inputType = 0x20001
Который:
- class =
TYPE_CLASS_TEXT | TYPE_TEXT_VARIATION_NORMAL - флаги =
InputType.TYPE_TEXT_FLAG_MULTI_LINE