java - 如何在android studio中说出列表中的所有项目
问题描述
我有一个列表,其中有一些字符串。
我想将所有字符串转换为语音并让它们在 Android Studio 中朗读。
假设有一个列表:
[apple, banana, orange, mango, ....]
我想让上面列表中的所有项目都说出来。
所以应用程序会说话:"apple", "banana", "orange", "mango"
我想在 android 中使用TextToSpeech库来说出列表中的项目。
有什么办法可以让我们这样做吗?
解决方案
看看这个教程如何实现TextToSpeech
:
https://code.tutsplus.com/tutorials/android-sdk-using-the-text-to-speech-engine--mobile-8540
Locales
Java8都支持以下内容,如果你想使用 Locale,它不是由 Locale 中的常量预定义的(你必须使用 Language Tag 并创建一个新的 Locale):
https://www.oracle.com/java/technologies/javase/jdk8-jre8-suported-locales.html
完成本教程的所有步骤后,您可以实现该speakWords()
方法并将其用于说出列表中的字符串。
private void speakWords(String speech) {
//speak straight away
myTTS.speak(speech, TextToSpeech.QUEUE_FLUSH, null);
}
之后可用于:
speakWords(NameOfYourList.get(int index));
speakWords()
例如,可以由 Buttonclick(单击事件)触发。
按钮单击 index++ 后,将选择列表的下一个单词。
推荐阅读
- c++ - 将多个模板相互组合
- python - Python中的TextCalendar导入错误
- groovy - Groovy 中无法解析的日期
- c - 为什么一个简单的 C 程序需要系统调用?
- scenekit - 使 SceneKit 灯只投射阴影而不照亮场景
- java - 如何使 Eclipse txt 文件中的字符可见?
- ios - 该整数是否等于文本字段中的数字
- angular - ngModel 但使用反应形式的验证方法
- php - PHP - unlink() 适用于直接路径,但不是必需的
- javascript - 与firebase中的当前用户对象交互需要我输入user.user,为什么我必须输入两次user?