我正在製作Android遊戲,其中一些圖形元素快速移動。 我打算使用Canvas,但擔心onDraw方法會在不規則的局部區域被調用,使得快速元素以不規則的速度移動。 有沒有辦法確保定期調用onDraw方法。android畫布onDraw計時
或者,如果我能以毫秒爲單位獲得系統時間,我可以在連續調用onDraw之間取得差異,並根據這些快速元素的速度使其運動平滑。
請幫助,
薩米爾
我正在製作Android遊戲,其中一些圖形元素快速移動。 我打算使用Canvas,但擔心onDraw方法會在不規則的局部區域被調用,使得快速元素以不規則的速度移動。 有沒有辦法確保定期調用onDraw方法。android畫布onDraw計時
或者,如果我能以毫秒爲單位獲得系統時間,我可以在連續調用onDraw之間取得差異,並根據這些快速元素的速度使其運動平滑。
請幫助,
薩米爾
我將使用畫布,但擔心的的onDraw方法將在不規則interevals使得快速元素被稱爲不規則的速度移動
您應該不是更新對象的位置onDraw()
,因爲:
相反,另一種方法更新對象/世界你定期使用定時器進行呼叫。
在更新世界之後,請致電View
觸發onDraw()
方法。如果你的應用程序有一些空閒時間,它會被調用。如果沒有,那麼world update method
將繼續運行並因此更新您的世界。
(當然,如果你的應用是太繁忙的觀點是永遠不會更新,您有問題需要解決!)
或者,如果我能在毫秒得到系統的時間,我可以走差異化在兩次連續的onDraw調用之間,並基於這些快速元素的速度使其運動平滑。
這是「世界更新方法」中的方法! 它將糾正不規則的定時器間隔。