簡體   English   中英

如何以編程方式為Google Glass GDK創建子菜單?

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

如何在代碼中動態創建Google Glass子菜單? 我想選擇一個帶有語音命令的用戶,例如“選擇用戶”->“本”。 用戶數據是從DB加載的,因此無法使用XML菜單。 此示例適用於使用滑動手勢進行導航:

@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);
}

現在我想在以下語音命令中使用相同的語音命令:

@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);
}

但是Glass無法識別語音命令。 我希望任何人都知道解決方案,我怎樣才能得到結果? 因為以下清單不適用於該解決方案。

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

非常感謝您提供任何解決方案!

如果我將類似的代碼放在onCreatePanelMenu()則效果很好。 由於您使用的是未列出的語音命令 ,因此清單中是否包含以下權限?

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM