【问题标题】:Samsung Galaxy Tab 2 : 10.1 - Can't pick up "Enter"三星 Galaxy Tab 2:10.1 - 无法选择“Enter”
【发布时间】:2012-08-01 14:00:24
【问题描述】:

好的,所以这很愚蠢。 我正在使用输入类型为 textPassword 的文本框。

在 Galaxy Tab 2 : 10.1 上:我无法像向下然后左转的箭头那样拿起“完成”按钮。

我正在做以下检查:

tv2.setOnKeyListener(new OnKeyListener() {

        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if (event.getAction() == KeyEvent.ACTION_DOWN)
            {
                switch (keyCode)
                {
                    case KeyEvent.KEYCODE_DPAD_CENTER:
                    case KeyEvent.KEYCODE_ENTER:
                        performRegister();
                        return true;
                    default:
                        break;
                }
            }
            return false;
        }
    });

上面的代码在我尝试过的 95% 的设备上都能正常工作,只有 Galaxy Tab 给了我这个问题。 我也试过:

tv2.setOnEditorActionListener(new OnEditorActionListener() {

        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            //CODE!!
        }
    });

但是当我按下按钮时,这些方法都没有被调用。 (根本没有调用!不是我没有检查正确的KeyEvent:没有KeyEvent)

这个按钮所做的只是隐藏键盘。

附言。我正在使用带有三星中文 IME 键盘的 Galaxy 标签。 v2.0.3

感谢您的帮助: 艾登

【问题讨论】:

  • 你是如何解决这个问题的?我面临着完全相同的问题
  • matts 选项看起来不错,但是在我的例子中,imeOption 是在 xml 文件中定义的,所以我不需要在活动代码下再次重新定义它。
  • 感谢您的回答。

标签: android keyboard keylistener


【解决方案1】:

尝试使用

TextView.setImeOptions(EditorInfo.IME_ACTION_DONE);

那么您应该在 OnEditorActionListener 中获得回调

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-14
    • 2014-01-10
    • 2012-07-31
    • 1970-01-01
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    • 2013-04-12
    相关资源
    最近更新 更多