0

我正在尝试在我的游戏中使用 SurfaceView 上的软键盘。问题是我无法处理 onKey 事件。

我尝试在我的视图上实现 OnKeyListener,并覆盖:

@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
    Log.w("Key", "Key Pressed");
    return true;
}

但我没有收到任何关键事件。

使用

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    Log.w("Key", "Key Pressed");
    return true;
}

也不行。

4

1 回答 1

1

原来我必须在视图构造函数钩子上指定以下内容:

setFocusable(true);
setFocusableInTouchMode(true);

因为输入事件只发送到焦点视图。

于 2012-06-09T06:13:37.143 回答