我使用以下代码段来为气球设置动画。这里的气球什么都没有,但是按钮和它使用翻译动画制作动画。
动画效果很好,但是当气球移动时会显示一些白点(参见图像)。为什么?任何解决方案?
见图:
-------------
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);
答案 0 :(得分:2)
您没有清除每个新框架上的画布。圆点是仍然可见的气球先前实例的边缘。
每次绘制画布时,它都不会从头开始,而是在已经存在的画布之上。这意味着每次绘制气球时,它都会绘制在每个其他实例的顶部。我猜你的气球图像有黑色背景?要解决这个问题,你需要在每一帧上通过重新绘制背景来“清除”你的画布。在这种情况下,您需要绘制一个覆盖整个框架的黑色矩形,之前绘制气球。