我想创建一个可以支持不同语言的应用程序。
"默认"没有问题。语言:
tts.setLanguage(Locale.ENGLISH);
还有其他一些:
Locale l = new Locale("ru","RU");
tts.setLanguage(l);
但是很多其他人都没有工作,例如:
Locale l = new Locale("hu","HU");
tts.setLanguage(l);
我也试过" hu"," hu-HU"," hu-rHU"," HU" ...但是没什么...
此外,它不适用于土耳其语,希腊语,荷兰语,捷克语......
答案 0 :(得分:6)
并非所有内容都受支持,请使用:Locale.getAvailableLocales()获取可用的区域设置并针对isLanguageAvailable对其进行测试,或者从api21开始,您可以使用getAvailableLanguages()直接获取当前TTS引擎的可用语言。您可以安装替代TTS引擎,即。 SVOX非常好。
答案 1 :(得分:0)
当您键入语言环境时,下拉列表将打开,并且可用的语言如下:
目前没有匈牙利语(Magyarul),土耳其语(Türkçe)。
答案 2 :(得分:0)
您必须将手机的系统语言更改为希腊语、土耳其语、荷兰语或任何您想要的语言,以便区域设置采用您的默认区域设置语言。 我写了 println 以检查程序是否正确使用您的系统语言
println(Locale.getDefault().country)
tts!!.setLanguage(Locale.getDefault())
答案 3 :(得分:0)