平日中使用Android应用,例如微信发送消息,输入法的enter键会显示发送
二字;在微博中使用搜索功能时,输入法的enter键会显示搜索
二字。
编写自己的Android应用时,如果能针对当前的任务,提示输入法显示接近的动作的问题,对用户体验是有所帮助的。
好在在Android上让enter键显示搜索
等固定的几种文字并不困难,可以在layout的xml中通过设定EditText
的imeOptions
属性来实现:
1 2 3 4 5 6 7 |
<EditText android:layout_width="match_parent" android:layout_height="40dp" android:imeOptions="actionSearch" android:inputType="text" android:hint="Search" android:id="@+id/editText1" /> |
这里需要注意的是,inputType
参数也需要设置,否则输入法一样是无法触发enter文字的改变的。
测试的xml文件如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <EditText android:layout_width="match_parent" android:layout_height="40dp" android:imeOptions="actionSearch" android:inputType="text" android:hint="Search" android:id="@+id/editText1" /> <EditText android:layout_width="match_parent" android:layout_height="40dp" android:imeOptions="actionSend" android:inputType="text" android:hint="Send" android:id="@+id/editText2" /> <EditText android:layout_width="match_parent" android:layout_height="40dp" android:imeOptions="actionGo" android:inputType="text" android:hint="Go" android:id="@+id/editText3" /> <EditText android:layout_width="match_parent" android:layout_height="40dp" android:imeOptions="actionDone" android:inputType="text" android:hint="Done" android:id="@+id/editText4" /> <EditText android:layout_width="match_parent" android:layout_height="40dp" android:imeOptions="actionNext" android:inputType="text" android:hint="Next" android:id="@+id/editText5" /> <EditText android:layout_width="match_parent" android:layout_height="40dp" android:imeOptions="actionPrevious" android:inputType="text" android:hint="Previous" android:id="@+id/editText6" /> </LinearLayout> </RelativeLayout> |
搜狗输入法的效果示意图如下: