使用swype时,OnKeyListener和onEditorAction无法正常工作

时间:2014-04-29 02:33:59

标签: android android-softkeyboard

我正在尝试在我的应用程序中按下软键盘上的回车键/返回键时在EditText中添加提交功能。

以下代码使用标准键盘,但不使用swype键盘(我也完成了等效的onKeyListener)。

et.setOnEditorActionListener(new EditText.OnEditorActionListener(){
            @Override
            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
                    Log.d(TAG, "enter was pressed");
                    addComment();
                    return true;
                }
        });

根本不会调用该方法。这仅仅是Swype的限制吗?或者我做错了什么? 如果这是Swype的限制,我怎么能解决它,我已经看到其他应用程序这样做,它使用我的swype键盘。

我的EditText布局定义为:

<EditText
            android:id="@+id/comment_edit_text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textMultiLine"
            android:hint="@string/comment_hint"
            android:visibility="gone"
            />

1 个答案:

答案 0 :(得分:0)

我认为这是Swype(也许还有谷歌)的设计决定。基本上,如果编辑文本是多行的,则无法覆盖回车键,因为您应该能够按Enter并期望换行。所以它真的是一个用户体验的东西,我想这是有意义的

基本上我必须添加一个额外的按钮来提交评论。