I have a fairly complex (not really) xml layout file. One of the views is a LinearLayout (v1
) with two children: an EditText(v2
) and another LinearLayout(v3
). The child LinearLayout in turn has an EditText(v4
) and an ImageView(v5
).
For EditText v2 I have imeOptions as
android:imeOptions="actionNext"
But when I run the app, the keyboard's return
does not check to next
and I want it to change to next
. How do I fix this problem?
Also, when user clicks next, I want focus to go to EditText v4. I do I do this?
For those who really need to see some 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:singleLine
has been deprecated, it is better to combineandroid:maxLines="1"
withandroid:inputType="text"
. This would be the code:Finally i have got sure solution for this issue Just add these 3 lines in your edit text and it will be working fine
Here you can add maxLines according to your requirement. Do not use singleLine as it is deprecated now. Good luck!
Just add
android:maxLines="1" & android:inputType="text"
to your EditText. It will work!! :)single line deprecated so you add below code I think inputType must.
The answers given here were all very helpful, but I was still struggling to get my keyboard's "Next" to show.
Turns out that when you use Android's
android:digits
attribute in your XML, it prevents theandroid:imeOptions="actionNext"
from working as expected.The answer is actually to use the deprecated
android:singleLine="True"
. This seems to force the IME Option to be respected.Old, Non-Working Code
Working Code
I'm not a fan of using a deprecated attribute, but for now it seems to get the desired result.