actionDone imeOption对Android 2.3中的EditText不起作用

时间:2011-04-07 09:37:46

标签: android android-edittext

我在Android 2.3中使用EditText时遇到问题。

我有一个EditText定义了android:imeOptions="actionDone"属性但是当我用虚拟键盘写入时,返回键没有检测到actionDone并且它引入了一个返回行。 / p>

在Android 2.2中工作正常。

<EditText android:layout_height="wrap_content"
    android:layout_width="fill_parent" 
    android:imeOptions="actionDone" />

3 个答案:

答案 0 :(得分:122)

我已经解决了这个问题。我添加了android:singleLine="true"属性,它可以正常工作。

<EditText android:layout_height="wrap_content"
    android:layout_width="fill_parent" 
    android:imeOptions="actionDone"
    android:singleLine="true" 
 />

答案 1 :(得分:8)

另一个值得注意的问题是,如果指定android:imeOptions,则android:digits不起作用。不确定这是否会影响所有Android版本。

答案 2 :(得分:0)

如果您使用

,目前在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"/>