我尝试在我的应用中使用TextToSpeech,
String text = editText.getText().toString();
tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
但是函数说(String text,int queueMode,HashMap params)在API Level 21中已被弃用。而不是这样,建议使用speak(CharSequence text,int queueMode,Bundle params,String utteranceId)。 但我不知道如何设置它。感谢
答案 0 :(得分:21)
String text = editText.getText().toString();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
tts.speak(text,TextToSpeech.QUEUE_FLUSH,null,null);
} else {
tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
}
答案 1 :(得分:-1)
这是完整的工作对我有用
Private TextToSpeech ts
ts=new TextToSpeech(CurrentActivity.this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
String text = "Any Text to Speak";
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
ts.speak(text,TextToSpeech.QUEUE_FLUSH,null,null);
} else {
ts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
}
}
});