Gibt es eine Möglichkeit, ein Multi-Line- EditText
Gerät zu haben und das IME-Aktionslabel "Done" unter Android 2.3 zu verwenden?
In Android 2.2 ist dies kein Problem. Die Eingabetaste zeigt die IME-Aktionsbezeichnung "Fertig" ( android:imeActionLabel="actionDone"
) an und schließt die Soft-Eingabe, wenn Sie darauf klicken.
Bei der Konfiguration eines EditText
für mehrere Zeilen entfernt entfernt Android 2.3 die Möglichkeit, die Aktion "Fertig" für die Soft Input-Tastatur anzuzeigen.
Ich habe es geschafft, das Verhalten der Soft Input-Eingabetaste mit einem zu ändern KeyListener
, aber die Eingabetaste sieht immer noch wie eine Eingabetaste aus.
Hier ist die Erklärung der 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 -->
Wenn ich den inputType
Wert nach dem Laden überprüfe und die Inhaltsansicht in der Aktivität einstelle, wird Folgendes angezeigt:
inputType = 0x20001
Welches ist:
- Klasse =
TYPE_CLASS_TEXT | TYPE_TEXT_VARIATION_NORMAL
- flags =
InputType.TYPE_TEXT_FLAG_MULTI_LINE