setOnEditorActionListener

setOnEditorActionListener

当用户在EditText中按Enter键时,我正在尝试做某事(多行editText表示用户可以写多行)
只是我想检测按下的回车键
使用的代码如下

<EditText
            android:id="@+id/body"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@android:color/transparent"
            android:hint="@string/hint"
            android:padding="5dp"
            android:scrollbars="vertical"
            android:textColor="@android:color/black"
            android:textCursorDrawable="@null"
            android:textSize="22sp" />


听众是

mBodyText.setOnKeyListener(new View.OnKeyListener() {
        @Override
        public boolean onKey(View view, int i, KeyEvent keyEvent) {
            if ((keyEvent.getAction()== KeyEvent.ACTION_UP)) {
                if(i == KeyEvent.KEYCODE_ENTER){
                    Toast.makeText(getApplicationContext(), "neter presed", Toast.LENGTH_LONG).show();
                    return true;
                }
            }
            return false;
        }
    });


但是当我按时它不显示任何东西,但是当我长按回车键时显示

并且setOnEditorActionListener是

mBodyText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
            if ((keyEvent.getAction()== KeyEvent.ACTION_UP)) {
                if(i == KeyEvent.KEYCODE_ENTER){
                    Toast.makeText(getApplicationContext(), "neter presed", Toast.LENGTH_LONG).show();
                    return true;
                }
            }
            return false;
        }
    });


当我按Enter键时它什么也没显示,而当我长按Enter键时应用程序崩溃
请帮助我,我很久以来一直在尝试

最佳答案

没人在那里回答我的问题感到失望,但我依靠自己的资源解决了问题
setOnKeyListener无法正常工作,因为某些android设备不支持此功能,但大多数支持
和setOnEditorActionListener导致崩溃,因为我试图从数据库中获取数据并将其显示在活动开始时的EditText视图中
特别感谢@ isma3l

关于android - setOnKeyListener或setOnEditorActionListener均未正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31054023/

10-11 14:34