2016-08-01 50 views
0

有两个按钮。开始并重复。开始TTS(文本到语音)应该从textview(t1)开始阅读文本。在阅读文本时,如果我点击重复按钮按钮 TTS应该不断重复阅读文本(一旦完成阅读(t1)),直到我点击停止按钮。 (就像音乐播放器)Android文本到语音重复功能

回答

0

通过调用方法onUtteranceCompleted得到解决方案。

public class MainActivity extends AppCompatActivity implements TextToSpeech.OnInitListener, TextToSpeech.OnUtteranceCompletedListener { 
... 
} 

private void speak(String text) { 
    if (text != null) { 
     HashMap<String, String> myHashAlarm = new HashMap<String, String>(); 

String.valueOf(AudioManager.STREAM_ALARM)); 
     myHashAlarm.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID, "SOME MESSAGE"); 
     tts.speak(text, TextToSpeech.QUEUE_FLUSH, myHashAlarm); 

    } 
} 


@Override 
    public void onUtteranceCompleted(String s) { 
      if(repateOn) { 
       // call speak method  
       speak(textString); 
      } 
     } 

谢谢。