我使用下面的代码播放音频,而字母正在文本视图上绘制。(我不想把它放在另一个线程中,以便像我完成here一样给出时间延迟。 在我的代码字是在循环退出后的一个时间绘制..任何soln? TIA
while(i < names[position].length() ) {
alphabets1=alphabets1+""+tempName.charAt(i);
letterPosition=findLetters(tempName.charAt(i));
if(mPlayVoice!=null)
{
while(mPlayVoice.isPlaying()){
//wait until audio stops
}
mPlayVoice.release();
mPlayVoice=null;
}
mPlayVoice = MediaPlayer.create(BirdsActivity.this, mAlphabetsSound[letterPosition]);
mPlayVoice.start();
txtFrontName.setText(alphabets1); // problems here
txtFrontName.refreshDrawableState();
if(i >= names[position].length())
wordsDrawingCompleted=true;
else
wordsDrawingCompleted=false;
i++;
}
答案 0 :(得分:0)
在设置文本后尝试txtFrontName.invalidate();