2011-10-08 118 views
1

我使用下面的代码段来动画气球。这里的气球什么都没有,但按钮,它是动画使用翻译动画。Android动画无法正常工作

动画效果很好,但气球移动时会显示一些白色圆点(请参阅图像)。为什么?任何方案?

看到这个图片:

enter image description here

  ------------- 
    anim = new TranslateAnimation(0, 360,1000,-100); 
    anim.setRepeatMode(Animation.REVERSE); 
    anim.setRepeatCount(Animation.INFINITE); 
    anim.setDuration(10000L); 
    anim.setInterpolator(new AccelerateDecelerateInterpolator()); 

    btnBalloon.setAnimation(anim); 

回答

2

你是不是清除每一个新的画框上。这些点是仍然可见的先前气球实例的边缘。

每次绘制画布时,它都不是从头开始绘制,而是绘制已经存在的东西的顶部。这意味着每次绘制气球时,都会绘制它的每个其他实例。我猜你的气球图像有黑色背景?为了解决这个问题,您需要在每个框架上重新绘制背景来“清除”画布。在这种情况下,您需要绘制一个覆盖整个框架的黑色矩形,,然后绘制气球。