0
cname = contactname.getText().toString();
tts.speak("Reciepient name is  " + cname, TextToSpeech.QUEUE_FLUSH, null);

上面的代码可以正常工作,但下面的代码不会说出字符串值。

String ww = "Welcome";
tts.speak(ww, TextToSpeech.QUEUE_FLUSH, null);
4

2 回答 2

1

TTS 引擎可以是喜怒无常的,除非null您需要添加一个HashMap包含话语 ID 的内容。

有很多教程展示了如何做到这一点,即使你的实现现在不需要它,你可能需要知道在你未来的设计中何时完成话语。

Android 介绍是一个很好的起点。

在不同的设备和操作系统版本上测试不同的 TTS 引擎 - 许多行为不同并暴露与您的基本代码无关的问题

于 2013-12-29T20:48:22.760 回答
0

我有同样的问题。我以这种方式修复:

    txt.setText("Hello"+" "+"World");
    tts.speak(txt, TextToSpeech.QUEUE_FLUSH, null);
于 2017-04-14T00:04:33.943 回答