2016-08-01 108 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); 
      } 
     } 

謝謝。