2011-08-07 88 views
0

我的要求:要字符串列表轉換成文本speech.and每個字符串的開始就應該播放聲音TTS不正常循環

問題:每當我運行此,只有最後一個被執行和絃樂之間也沒有音樂?我應該如何修改使得循環會進入下一個串完成第一個字符串的文字轉語音只有當..

for(int m=0;m<c1;m++) 
    {  
     mp = MediaPlayer.create(Web4.this, R.raw.music1); 
     mp.start();   
     tts.setOnUtteranceCompletedListener(this); 
     HashMap<String, String> myHashRender = new HashMap(); 
     myHashRender.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID,"end of wakeup message ID"); 
     tts.speak(question1[m],TextToSpeech.QUEUE_FLUSH,myHashRender); 
     tts.speak("Completed", TextToSpeech.QUEUE_ADD,  myHashRender); 
     mp.stop(); 
    } 

回答

0

嘗試每調用之間加入延時,它可能會有所幫助。

2

將索引存儲在一個字段中,只能從onUntteranceCompleted()調用下一個speak()(當然除了第一個)。