Ich habe eine ziemlich komplexe (nicht wirklich) XML-Layoutdatei. Eine der Ansichten ist ein LinearLayout ( v1
) mit zwei untergeordneten Elementen: ein EditText ( v2
) und ein anderes LinearLayout ( v3
). Das untergeordnete LinearLayout verfügt wiederum über einen EditText ( v4
) und eine ImageView ( v5
).
Für EditText v2 habe ich imeOptions als
android:imeOptions="actionNext"
Wenn ich die App starte, wird die Tastatur return
nicht aktiviert next
und ich möchte, dass sie geändert wird next
. Wie behebe ich dieses Problem?
Wenn der Benutzer das nächste Mal klickt, soll der Fokus auf EditText v4 gelegt werden. Ich mache ich das?
Für diejenigen, die wirklich Code sehen müssen:
<LinearLayout
android:id="@+id/do_txt_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/col6"
android:orientation="vertical"
android:visibility="gone" >
<EditText
android:id="@+id/gm_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="@drawable/coldo_text"
android:hint="@string/enter_title"
android:maxLines="1"
android:imeOptions="actionNext"
android:padding="5dp"
android:textColor="pigc7"
android:textSize="ads2" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="100dp"
android:orientation="horizontal" >
<EditText
android:id="@+id/rev_text"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_margin="5dp"
android:layout_weight="1"
android:background="@drawable/coldo_text"
android:hint="@string/enter_msg"
android:maxLines="2"
android:padding="5dp"
android:textColor="pigc7"
android:textSize="ads2" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:background="@drawable/colbtn_r”
android:clickable="true"
android:onClick=“clickAct”
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:src="@drawable/abcat” />
</LinearLayout>
</LinearLayout>
android
android-layout
focus
ime
Katedral Pillon
quelle
quelle
android:nextFocusDown="@id/edit_text_v4"
(versuchen Sie es vielleicht auchandroid:nextFocusForward
oder einige der anderen nextFocus-Attribute).Antworten:
Fügen Sie einfach
android:maxLines="1" & android:inputType="text"
zu Ihrem EditText. Es wird klappen!! :) :)quelle
wrap_content
. Das Einstellen eines hatinputType
das Problem in meinem Fall gelöst.android:maxLines="1"
stattandroid:singleLine="true"
als veraltetmaxLine="1"
nicht funktioniert.singleLine
ist veraltet. Hinzufügen eines Eingabetyps (z. B.:android:inputType="text"
auch bei mir funktioniert.Verwenden Sie
android:maxLines="1"
wiesingleLine
veraltetquelle
android:singleLine
wurde veraltet, es ist besser,android:maxLines="1"
mit zu kombinierenandroid:inputType="text"
. Dies wäre der Code:quelle
Die hier gegebenen Antworten waren alle sehr hilfreich, aber ich hatte immer noch Probleme, das "Weiter" meiner Tastatur anzuzeigen.
Es stellt sich heraus, dass wenn Sie das Android-
android:digits
Attribut in Ihrem XML verwenden, es nichtandroid:imeOptions="actionNext"
wie erwartet funktioniert.Die Antwort ist eigentlich, die veralteten zu verwenden
android:singleLine="True"
. Dies scheint die Einhaltung der IME-Option zu erzwingen.Alter, nicht funktionierender Code
Arbeitscode
Ich bin kein Fan von veralteten Attributen, aber im Moment scheint es das gewünschte Ergebnis zu erzielen.
quelle
einzelne Zeile veraltet, so dass Sie unten Code hinzufügen Ich denke, inputType muss.
quelle
Endlich habe ich eine sichere Lösung für dieses Problem. Fügen Sie einfach diese 3 Zeilen in Ihren Bearbeitungstext ein und es wird gut funktionieren
Hier können Sie je nach Anforderung maxLines hinzufügen . Verwenden Sie singleLine nicht , da es jetzt veraltet ist. Viel Glück!
quelle
Sie müssen einen inputType angeben, damit imeOptions funktioniert.
quelle
Der Schlüssel hier ist das Festlegen der Attribute für Eingabetyp und imeOptions
quelle
Nur das hat bei mir funktioniert.
Ändern Sie es:
auf diesem:
quelle
quelle
actionUnspecified
genau.Der folgende Code ist Kraft
quelle
Diese drei Zeilen sind genug.
quelle