2011-10-08 213 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

你是不是清除每一個新的畫框上。這些點是仍然可見的先前氣球實例的邊緣。

每次繪製畫布時,它都不是從頭開始繪製,而是繪製已經存在的東西的頂部。這意味着每次繪製氣球時,都會繪製它的每個其他實例。我猜你的氣球圖像有黑色背景?爲了解決這個問題,您需要在每個框架上重新繪製背景來「清除」畫布。在這種情況下,您需要繪製一個覆蓋整個框架的黑色矩形,,然後繪製氣球。