actionDone ime选项在Android 2.3的EditText上不起作用
我在使用Android 2.3中的EditText
遇到问题。
我有一个用android:imeOptions="actionDone"
属性定义的EditText
,但是当我用虚拟键盘写入时,返回键没有检测到actionDone
,它引入了一个返回行。
在Android 2.2中工作正常。
<EditText android:layout_height="wrap_content" android:layout_width="fill_parent" android:imeOptions="actionDone" />
我已经解决了这个问题。 我已经添加了android:singleLine="true"
属性,它的工作原理是正确的。
<EditText android:layout_height="wrap_content" android:layout_width="fill_parent" android:imeOptions="actionDone" android:singleLine="true" />
另一个值得注意的是,如果你指定了android:digits
, android:imeOptions
不起作用。 不知道这是否影响所有的Android版本。
目前在Android Studio 2.2.3如果你使用
android:singleLine="true"
IDE给出了一个警告,它已被弃用,而不是使用maxlines。
android:maxLines="1"
但是maxLines不能解决问题。 解决方法是只添加属性inputType 。 例如:
<EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/actionDoneDemo" android:layout_below="@id/nameET" android:imeOptions="actionDone" android:hint="Action Done Demo" android:inputType="text"/>
只需指定inputType
。
这对我有用