J'ai un fichier de mise en page XML assez complexe (pas vraiment). L'une des vues est un LinearLayout ( v1
) avec deux enfants: un EditText ( v2
) et un autre LinearLayout ( v3
). L'enfant LinearLayout a à son tour un EditText ( v4
) et un ImageView ( v5
).
Pour EditText v2, j'ai imeOptions comme
android:imeOptions="actionNext"
Mais lorsque j'exécute l'application, le clavier return
ne vérifie pas next
et je veux qu'il devienne next
. Comment résoudre ce problème?
De plus, lorsque l'utilisateur clique sur Suivant, je souhaite que le focus passe à EditText v4. Je fais ça?
Pour ceux qui ont vraiment besoin de voir du code:
<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
la source
la source
android:nextFocusDown="@id/edit_text_v4"
(peut-être aussi essayerandroid:nextFocusForward
ou certains des autres attributs nextFocus).Réponses:
Ajoutez simplement
android:maxLines="1" & android:inputType="text"
à votre EditText. Ça va marcher!! :)la source
wrap_content
. Définir un ainputType
résolu le problème dans mon cas.android:maxLines="1"
au lieu deandroid:singleLine="true"
comme obsolètemaxLine="1"
qu'il ne fonctionne pas.singleLine
est obsolète. L'ajout d'un type d'entrée (par exemple:) aandroid:inputType="text"
également fonctionné pour moi.Utiliser
android:maxLines="1"
telsingleLine
quel est déconseilléla source
android:singleLine
est obsolète, il vaut mieux combinerandroid:maxLines="1"
avecandroid:inputType="text"
. Ce serait le code:la source
Les réponses données ici étaient toutes très utiles, mais j'avais encore du mal à afficher "Suivant" de mon clavier.
Il s'avère que lorsque vous utilisez l'
android:digits
attribut Android dans votre XML, cela empêche leandroid:imeOptions="actionNext"
de fonctionner comme prévu.La réponse est en fait d'utiliser la version obsolète
android:singleLine="True"
. Cela semble forcer le respect de l'option IME.Ancien code non fonctionnel
Code de travail
Je ne suis pas fan de l'utilisation d'un attribut obsolète, mais pour l'instant, il semble obtenir le résultat souhaité.
la source
seule ligne obsolète donc vous ajoutez ci-dessous le code, je pense que inputType doit.
la source
Enfin, j'ai une solution sûre pour ce problème Ajoutez simplement ces 3 lignes dans votre texte d'édition et cela fonctionnera bien
Ici, vous pouvez ajouter des maxLines en fonction de vos besoins. Ne pas utiliser SingleLine comme il est maintenant dépréciée. Bonne chance!
la source
Vous devez spécifier un inputType pour que imeOptions fonctionne.
la source
La clé ici est de définir le type d'entrée et les attributs imeOptions
la source
Seul cela a fonctionné pour moi.
Changes le:
sur ça:
la source
la source
actionUnspecified
exactement.sous le code est la force
la source
Ces trois lignes suffisent.
la source