2
我正在製作一個簡單的Android程序,用於訓練目的運行助記符或數學練習。 我有一個「新練習」按鈕,可以改變問題和答案。我想實現一個「文本到語音」模式,在這個模式下,軟件讀取問題和答案。在他們說完之後,它應該計算一個新的問題並重新開始。如何訪問TTS OnUtteranceCompleted回調中的佈局?
我正在使用OnUtterance完成來確定演講是否已結束。我的問題是,我無法從回調中訪問我的「新練習」按鈕。
我使用這個:
private TextToSpeech.OnUtteranceCompletedListener onUtteranceCompleted = new TextToSpeech.OnUtteranceCompletedListener()
{
@Override
public void onUtteranceCompleted(String utteranceId)
{
if(0 == utteranceId.compareToIgnoreCase(END_OF_SPEECH))
{
Log.i("TTS","Completed");
if (TTSMode == TTS_MODE_ON) {
//Start new
Log.i("TTS","TTS mode is on: start new exercize");
NewExercize();
btnNewEx.performClick();
}
}
}
};
我得到了以下錯誤: $ CalledFromWrongThreadException:只有創建視圖層次可以觸摸其觀點原來的線程。
我能夠生成新的問題/答案,但我不能使用按鈕來更改新問題或答案的字段,TTS引擎使用這些字段。
任何想法?
完美!非常感謝你 – DavidTonarini