简体   繁体   English

如何以编程方式为Google Glass GDK创建子菜单?

[英]How to create a submenu programmatically for Google Glass GDK?

How can I create a Submenu for Google Glass dynamically in Code? 如何在代码中动态创建Google Glass子菜单? I want to select an User with Voice Commands like “Select User” -> “Ben”. 我想选择一个带有语音命令的用户,例如“选择用户”->“本”。 The User-Data is loaded from a DB, so an XML menu isn't possible. 用户数据是从DB加载的,因此无法使用XML菜单。 This example works for navigation with swipe gestures: 此示例适用于使用滑动手势进行导航:

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    menu.clear(); 
    SubMenu sbm = menu.addSubMenu(Menu.NONE, 1, menu.NONE, "Select User");
    sbm.add(Menu.NONE, 2, menu.NONE, "Ben");
    sbm.add(Menu.NONE, 3, menu.NONE, "Ted");
    return super.onPrepareOptionsMenu(menu);
}

Now I want to use the same with voice commands in the: 现在我想在以下语音命令中使用相同的语音命令:

@Override
public boolean onPreparePanel(int featureId, View view, Menu menu) {
    menu.clear(); 
    SubMenu sbm = menu.addSubMenu(Menu.NONE, 1, menu.NONE, "Select User");
    sbm.add(Menu.NONE, 2, menu.NONE, "Ben");
    sbm.add(Menu.NONE, 3, menu.NONE, "Ted");
    return super.onPreparePanel(featureId, view, menu);
}

But the Glass didn't recognize the voice commands. 但是Glass无法识别语音命令。 I hope anyone knows an solution and how can I catch the result? 我希望任何人都知道解决方案,我怎样才能得到结果? Because the following listing doesn't work for this solution. 因为以下清单不适用于该解决方案。

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS || featureId == Window.FEATURE_OPTIONS_PANEL) {
        switch (item.getItemId()) {
        case 1:
        ...

many thanks in advance for any solution! 非常感谢您提供任何解决方案!

This works fine if I put similar code in onCreatePanelMenu() . 如果我将类似的代码放在onCreatePanelMenu()则效果很好。 Since you are using unlisted voice commands , did you include the following permission in your manifest? 由于您使用的是未列出的语音命令 ,因此清单中是否包含以下权限?

 <uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT"/>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM