如何获取所有可用的英语TTS语言和所有可用的西班牙语TTS语言的列表?我想要做的是允许用户选择使用哪种英语语音和哪种西班牙语语音。
发布于 2013-08-16 09:50:36
我有一个可行的解决方案。我希望这能帮助任何有类似问题的人。
Locale[] locales = Locale.getAvailableLocales();
List<Locale> localeListEnglish = new ArrayList<Locale>();
List<Locale> localeListSpanish = new ArrayList<Locale>();
for (Locale locale : locales)
{
if (tts.isLanguageAvailable(locale) == TextToSpeech.LANG_AVAILABLE)
{
if (locale.getLanguage().equals("en"))
localeListEnglish.add(locale);
else if (locale.getLanguage().equals("es"))
localeListSpanish.add(locale);
}
}
String message = new String("");
for (int i = 0; i < localeListEnglish.size(); i++)
message += localeListEnglish.get(i) + "\n";
for (int i = 0; i < localeListSpanish.size(); i++)
message += localeListSpanish.get(i) + "\n";
Log.i("debug", message);https://stackoverflow.com/questions/18257803
复制相似问题