2010-10-06 91 views
4

我想在用戶觸摸到畫面時在畫布上顯示動畫。我知道基本知識以及如何在畫布上繪製位圖,但找不到任何東西擅長在canvas上繪製或顯示動畫.i將使用逐幀動畫,並且它會出現在用戶觸摸的相同位置,這就是爲什麼我無法使用ImageView。如何在畫布上繪製動畫?(android)

回答

6

不知道是否有內置的方式來做到這一點。但簡單地將位圖加載到數組中就相當簡單。

然後調用invalidate(),你的onDraw()方法應該自動失效(),並在下一次運行計算顯示哪個幀(通過計算最後一幀顯示的時間)。每次播放幀時,都會增加幀計數器並重置時間計數器。

您可以使用可變延遲,並且實現起來相當容易。

+0

感謝您的回答。我在問這個問題之前試過這個問題,但是當我從for循環調用invalidate()時出現問題,它只是使onces失效,並顯示屏幕上的第一幀。 – Tony 2010-10-06 20:47:30

+0

您必須使用onDraw()方法調用invalidate()或postInvalidate()方法來調用它。 – 2010-10-06 20:49:37