原因: AnimationDrawable调用在ImageView完成显示图片之前,所以无法播放动画。 解决方法: 1、手动触发动画 2、添加监听器:
final ImageView voice_icon = (ImageView) view.findViewById(R.id.voice_icon);
voice_icon.getViewTreeObserver().addOnPreDrawListener(new OnPreDrawListener() {
@Override
public boolean onPreDraw() {
// TODO Auto-generated method stub
final AnimationDrawable animationDrawable = (AnimationDrawable) voice_icon.getDrawable();
if (message.isPlaying()) {
animationDrawable.start();
}
return true;
}
});