Android 兼容搜狗输入法 回车监听无效的bug

Posted 亚洲小炫风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 兼容搜狗输入法 回车监听无效的bug相关的知识,希望对你有一定的参考价值。

android 应用 大多都没在软键盘监听上做功夫 今天项目中突然发现搜狗输入法 回车监听无效 于是探索1小时 得出解决方案

继承EiditText 复写

 @Override
    public InputConnection onCreateInputConnection(EditorInfo outAttrs) {
        return new InputConnectionWrapper(super.onCreateInputConnection(outAttrs),true){
            @Override
            public boolean commitText(CharSequence text, int newCursorPosition) {
                if(text.equals("\\n")) {
                    sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_ENTER));
                    return false;
                }
                return super.commitText(text, newCursorPosition);
            }
        };
    }
 findViewById.setOnKeyListener { v, keyCode, event ->
            if(keyCode== KeyEvent.KEYCODE_ENTER&&event.action==KeyEvent.ACTION_DOWN)
            {
                Toast.makeText(this, "keycode:" + keyCode + "  event:" + event, Toast.LENGTH_LONG)
                    .show();
                true;
            }else {
                false
            }
        }

完美解决
 

以上是关于Android 兼容搜狗输入法 回车监听无效的bug的主要内容,如果未能解决你的问题,请参考以下文章

Android 兼容搜狗输入法 英文输入 回车监听无效的bug

Android 兼容搜狗输入法 英文输入 回车监听无效的bug

Android,Studio的EditText控件的回车监听事件无效

android 横屏状态,如何监听键盘的弹起与隐藏

Android 软键盘监听回车之没辣么简单

Android之输入内容监听回车键Editor