如何处理在Google Glass应用中打开选项菜单时发生的“keyDown”事件

时间:2014-07-24 23:53:49

标签: android google-glass google-gdk

我希望阻止用户在我的应用内部使用Google Glass上的外部相机按钮拍照。

我正在通过覆盖“onKeyDown”方法来捕获主Activity中的任何相机按钮事件。但是,我发现当用户需要选择菜单项时,如果在我的应用程序中打开了Google Glass选项菜单(例如,当调用方法“openOptionsMenu”时),keyEvents将与我的活动分开处理,用户可以最终不小心拍了照片。

有没有办法在选项面板中捕获keyDown事件?

有没有办法访问包含选项面板的“视图”,并为其添加一个onKey侦听器?我试图通过“onCreatePanelView”获取此视图,但该方法只返回n​​ull。

另一种选择是覆盖onCreatePanelView并创建我自己的自定义面板视图,但我希望有一个避免这种情况的解决方案,并允许我将onKeyDown监听器添加到默认选项面板。

1 个答案:

答案 0 :(得分:0)

您可以尝试在菜单中使用此代码段:

    public boolean onKeyDown(int i, KeyEvent keyevent) {
        if (i == 27) {
            keyevent.startTracking();
            return true;
        }
        else {
            return super.onKeyDown(i, keyevent);
        }
    }