如何检查是否单击了键盘上的Enter?

时间:2018-10-26 16:44:14

标签: android onclick key onclicklistener enter

此问题不可重复。

我要检查是否单击了键盘上的 enter

此代码对我最有帮助:

 edittext.setOnKeyListener(new View.OnKeyListener() {
        @Override
        public boolean onKey(View view, int i, KeyEvent keyEvent) {
            Toast.makeText(getActivity(), "it works", Toast
                    .LENGTH_SHORT).show();
            return false;
        }
    });

但是它仅适用于我的电脑的键盘,不适用于我的手机。 我不知道天气的重要性,但是我正在使用片段。

这是我的XML:

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@null"
    android:id="@+id/edittext"
    android:imeOptions="actionDone"
    android:padding="10dp"/>

我查看了 ALL These acticles,并尝试了所有代码,但没有任何效果。

编辑

我读了一条评论,所以想补充:

我在谈论软件键盘。

1 个答案:

答案 0 :(得分:2)

取决于您的EditText的android:imeOptions=""。 例如android:imeOptions="actionDone"

editText.setOnEditorActionListener(new OnEditorActionListener() {        
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if(actionId == EditorInfo.IME_ACTION_DONE){
            //do something
        }
    return false;
    }
});

UPD: 将android:inputType="text"添加到xml文件中的EditText

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@null"
    android:id="@+id/edittext"
    android:inputType="text"
    android:imeOptions="actionDone"
    android:padding="10dp"/>