TextToSpeech tts = new TextToSpeech(context, this);
tts.speak(text, TextToSpeech.QUEUE_ADD, null);
我怎么知道讲话何时结束,因为停止讲话时我需要执行一些额外的代码。但我有问题,因为我不知道如何检查讲话是否结束。
有什么选项可以检查吗?
TextToSpeech tts = new TextToSpeech(context, this);
tts.speak(text, TextToSpeech.QUEUE_ADD, null);
我怎么知道讲话何时结束,因为停止讲话时我需要执行一些额外的代码。但我有问题,因为我不知道如何检查讲话是否结束。
有什么选项可以检查吗?
是的,有两个听众:
UtteranceProgressListener我没用过,但是OnUtteranceCompletedListener很特别。这里有两个提示:
onInit()
器,以前从未如此。params
给speak()
valid KEY_PARAM_UTTERANCE_ID
,否则永远不会调用此侦听器。据我所知,没有监听器,但我们调用了方法isSpeaking()
来检查 TTS 引擎是否忙于说话。这样你就可以借助这个方法来检查它是否在说话
public boolean isDoneSpeaking() {
if(!mTts.isSpeaking())
{
return true;
}
else
{
return false;
}
}