Czy istnieje sposób na EditText
prezentację wielu wierszy i użycie etykiety działania IME „Gotowe” w systemie Android 2.3?
W systemie Android 2.2 nie stanowi to problemu, przycisk Enter wyświetla etykietę czynności IME „Gotowe” ( android:imeActionLabel="actionDone"
) i odrzuca wprowadzanie programowe po kliknięciu.
Podczas konfigurowania EditText
wieloliniowego systemu Android 2.3 usuwa możliwość wyświetlania czynności „Gotowe” dla klawiatury programowej.
Udało mi się zmienić zachowanie przycisku wprowadzania miękkiego wprowadzania danych za pomocą a KeyListener
, jednak przycisk enter nadal wygląda jak klawisz Enter.
Oto deklaracja 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 -->
Kiedy sprawdzam inputType
wartość po wczytaniu ustawienia widoku treści w działaniu, to pokazuje się jako:
inputType = 0x20001
Który jest:
- class =
TYPE_CLASS_TEXT | TYPE_TEXT_VARIATION_NORMAL
- flagi =
InputType.TYPE_TEXT_FLAG_MULTI_LINE