2016-08-01 3 views
0

Есть две кнопки. Начать и повторить. При запуске TTS (Text To Speech) должен начать читать текст с textview (t1). При чтении текста, если я нажал кнопку повтора кнопка TTS должна продолжать повторять текст чтения (после того, как он закончил чтение (t1) полностью), пока я не нажал кнопку остановки кнопка. (Just Like Music Player)Android Text To Speech Repeat Functionality

ответ

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); 
      } 
     } 

Спасибо.