Android键盘输入按钮以保持键盘可见

Android keyboard enter button to keep keyboard visible

我想让我的回车键完成一个动作而不会在之后隐藏键盘。 目前每当我输入内容并按下回车按钮时,EditText输入被清除以接受下一个输入,但是当键盘消失时,我必须再次单击EditText以便键盘再次出现...

现在这是我的布局:

1
2
3
4
5
6
7
8
<EditText
    android:id="@+id/etCommand"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:hint="@string/commandHint"
    android:inputType="textNoSuggestions"
    android:imeOptions="actionSend">
</EditText>

和代码:

1
2
3
4
5
6
7
8
9
10
etCommand = (EditText) findViewById(R.id.etCommand);
etCommand.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_SEND) {
            sendCommand();
        }
        return false;
    }
});

编辑

正如swayam建议我必须在onEditorAction内返回true,以便操作系统认为操作已被处理并且不管它。


为EditText添加KeyListener以进入Enter键,并在任务完成后再次在edittext上重新设置requestfocus将是解决方案


快来看看这段代码:

1
2
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);