首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否可以使用语音命令来导航而不是使用滑动手势?

是否可以使用语音命令来导航而不是使用滑动手势?
EN

Stack Overflow用户
提问于 2015-01-07 11:05:22
回答 1查看 723关注 0票数 1

嗨,我是

目前,我正在开发一个浸入式应用程序,以提供屏幕上的文本和用户可以swipe_right去另一个。

实际上,它是从被称为字谜()的样本浸入模式中适应的。

我的目标是,我想使用语音命令,而不是滑动手势。

例如;

  1. 用户打开沉浸演示,屏幕将显示第一个文本。
  2. 用户希望通过使用“下一步”的声音去下一个文本。
  3. 屏幕将显示另一个文本。

考虑到这个帖子

有什么办法可以做到吗?或者有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-13 04:27:56

在这里,,这是我的解决方案。希望这能帮助那些寻找的人。

我使用Contextual voice commands为用户提供“Next”、“Save”和“Exit”命令。您可以从google站点访问本文件,以了解这样做的想法。

我有我的布局活动来显示一些文本,所以我把这个代码结构。在我的布局活动中

代码语言:javascript
运行
复制
    //contextual voice command
import com.google.android.glass.view.WindowUtils;
import android.view.Menu;
import android.view.MenuItem;


@Override
public boolean onCreatePanelMenu(int featureId, Menu menu) {
    if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    // Pass through to super to setup touch menu.
    return super.onCreatePanelMenu(featureId, menu);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS) {
        switch (item.getItemId()) {

            case R.id.save_menu_item:
                Log.d("Contextual", "go save checks");  
                break;
            case R.id.next_menu_item:
                Log.d("Contextual", "go next checks");                    
                break;
            case R.id.exit_menu_item:
                Log.d("Contextual", "go exit checks");                    
                break;
            default:
                return true;
        }

        return true;
    }
    return super.onMenuItemSelected(featureId, item);
}                                                                                                                

不要忘记将这一行getWindow().requestFeature(WindowUtils.FEATURE_VOICE_COMMANDS);声明为onCreate();在setContentView()之前。

接下来,我在它的内部创建了‘菜单文件夹’和main.xml,以提供我的项目选择。像这样

代码语言:javascript
运行
复制
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:id="@+id/next_menu_item"
    android:title="@string/next">

</item>
<item
    android:id="@+id/save_menu_item"
    android:title="@string/save_this">
</item>
<item
    android:id="@+id/exit_menu_item"
    android:title="@string/exit">
</item>

还有我的strings.xml文件。

代码语言:javascript
运行
复制
<resources>
   <string name="next">next</string>
   <string name="save_this">save</string>
   <string name="exit">exit</string>
</resources>

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

敬你的AndroidMenifest.xml

,这对我来说很好!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27818039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档