Android软键盘操作按钮

时间:2011-05-15 07:55:11

标签: android android-layout android-softkeyboard

我的布局有4个EditText视图和一个提交Button视图。我需要为前3个EditText设置“Next”按钮,为第4个EditText字段设置“Done”按钮,而不是软键盘的“New Line”键。

如何做到这一点?

4 个答案:

答案 0 :(得分:69)

在您的布局中,只需为前三个文本框设置XML属性android:imeOptions="actionNext",为最后一个文本框设置android:imeOptions="actionDone"

请参阅:android:imeOptions documentation

此外,training docs中有一个小的XML示例。

答案 1 :(得分:6)

将焦点导航到下一个编辑字段添加

  

机器人:imeOptions = “flagNavigateNext”

并点击完成后点击添加

解除软键
  

机器人:imeOptions = “actionDone”

你布局上的

:)

答案 2 :(得分:2)

在按钮xml中添加android:singleLine="true"

答案 3 :(得分:1)

我认为你所寻找的是这样的:

EditText nextText = new EditText(this)
{
    @Override
    public InputConnection onCreateInputConnection(final EditorInfo outAttrs)
    {
        outAttrs.imeOptions |= EditorInfo.IME_ACTION_NEXT;
        return (super.onCreateInputConnection(outAttrs));
    }
};

EditText doneText = new EditText(this)
{
    @Override
    public InputConnection onCreateInputConnection(final EditorInfo outAttrs)
    {
        outAttrs.imeOptions |= EditorInfo.IME_ACTION_DONE;
        return (super.onCreateInputConnection(outAttrs));
    }
};

首先将用户带到接受文本的布局中的下一个字段。第二个将关闭IME(软键盘)。