我想利用 Android 的功能在为数字输入配置的 EditText 控件上接受语音输入。我希望在控件获得焦点时弹出数字键盘。我使用了以下 xml:
<EditText
android:id="@+id/edittext"
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:numeric="decimal"
/>
这会导致数字和符号键盘按预期出现,但没有语音输入按钮。如果我将键盘切换为字母数字键,会显示语音输入按钮,但它已被禁用。
如果我删除 android:numeric="decimal"属性,则会出现常规的 abc 键盘并启用语音,如果我说一个数字,如“一八十二点六六”,它会工作并在编辑文本框。
我四处寻找启用“仅十进制”语音输入的方法。我无法在 EditText 或 TextView 上找到与语音输入有关的任何属性。
有人可以帮忙吗?我宁愿不使用语音识别 Intent ,如果可以避免,我必须自己做所有事情(尽管这将是一个有趣的学习项目!)
最佳答案
我认为不会有任何开箱即用的方式让它按您想要的方式工作。我猜最快的路径是将小键盘设置为十进制,然后提供您自己的语音输入按钮。一旦服务器将它认为它听到的字符串返回给您,那么只需验证它是一个数字并将其放入编辑文本中(如果是)。
关于android - 如何在数字 EditText 上启用语音输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8249882/