Android 如何将文本中的荷兰语设置为语音?
我想在TTS对象中设置荷兰语。代码如下:Android 如何将文本中的荷兰语设置为语音?,android,text-to-speech,android-location,Android,Text To Speech,Android Location,我想在TTS对象中设置荷兰语。代码如下: @Override public void onInit(int status) { if ( status == TextToSpeech.SUCCESS ) { int result = tts.setLanguage(Locale.getDefault()); System.out.println ( "Result : " + result + " " + Locale.getDefault
@Override
public void onInit(int status)
{
if ( status == TextToSpeech.SUCCESS )
{
int result = tts.setLanguage(Locale.getDefault());
System.out.println ( "Result : " + result + " " + Locale.getDefault().getLanguage() );
if (result == TextToSpeech.LANG_MISSING_DATA
|| result == TextToSpeech.LANG_NOT_SUPPORTED)
{
Toast.makeText( this , "Please Set your Language to English US.", Toast.LENGTH_LONG ).show();
}
else
{
tts.speak( "Hoe gaat het",TextToSpeech.QUEUE_FLUSH, null );
}
}
}
下一行设置TTS中的语言
int result = tts.setLanguage(Locale.getDefault());
可用区域设置位于区域设置中
现在,如果我的手机语言是荷兰语,那么我可以将TTS语言设置为荷兰语,但如果我的手机语言不是荷兰语(例如,如果是英语),则无法将TTS语言设置为荷兰语
有人能帮我在TTS中设置荷兰语吗?您正在
setLocale
中设置默认语言环境。这就是问题的原因:如果我的手机语言是荷兰语,那么我可以将TTS语言设置为荷兰语,但是如果我的手机语言不是荷兰语(例如,如果是英语),那么就没有选项将TTS语言设置为荷兰语
您应该使用所需的区域设置。因此,替换
int result = tts.setLanguage(Locale.getDefault());
与
例如:
int result = tts.setLanguage(Locale.GERMAN);
请参阅,其中包括可设置的可用区域设置。那里没有荷兰语
尽管这篇文章提到荷兰语是可用的。可能不是针对android,而是针对java,正如建议的那样
希望这能有所帮助。这应该能奏效
int result = tts.setLanguage(new Locale("nl_NL"));
印度语
setLanguage(新语言环境(“hin”、“IND”、“variant”)
美国英语
设置语言(新语言环境(“英语”、“美国”、“变体”)
其中newsreaderTTS是TTS。请再次检查这个问题,我在Locale中添加了可用选项的图像。到底为什么Dutchland中的“de”前缀是“Deutschland”而不是“nl”?对于正在研究这个问题的人,您需要将前缀“de_nl”更改为“nl_nl”以获得正确的荷兰语
int result = tts.setLanguage(new Locale("nl_NL"));