我正在使用帶有INFINITE重複設置的animationlistener,每次它循環調用onAnimationRepeat函數都很重要。Android動畫速度太慢
這一切都適用於設置爲〜100ms或更高的動畫持續時間。我設置的任何較小值(例如30ms)仍然似乎在100ms左右。我在設備和仿真器上試過這個。
我正在使用Alphaanimation,但我也嘗試過其他類型的android動畫。
有沒有辦法使任何動畫能夠正常工作,持續時間大約爲50ms或更快?
我正在使用帶有INFINITE重複設置的animationlistener,每次它循環調用onAnimationRepeat函數都很重要。Android動畫速度太慢
這一切都適用於設置爲〜100ms或更高的動畫持續時間。我設置的任何較小值(例如30ms)仍然似乎在100ms左右。我在設備和仿真器上試過這個。
我正在使用Alphaanimation,但我也嘗試過其他類型的android動畫。
有沒有辦法使任何動畫能夠正常工作,持續時間大約爲50ms或更快?
與其他「滑動」動畫相比,AlphaAnimation相當資源密集的動畫。
您可以嘗試使用TraceView進行調查,以確切查看掛斷的位置。
我懷疑它只是動畫的開銷,會放慢一切。
給TraceView一個鏡頭,報告結果,我會看看是否可以給出進一步的建議。
希望這會有所幫助!
我知道這是舊的,但對於像我現在一樣使用谷歌搜索的人。
嘗試加入到這個動畫XML:
機器人:插值=「@安卓:動畫/ accelerate_decelerate_interpolator」
糾正我,如果我錯了,但我認爲它同時適用於翻譯和Alpha
例子:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="100%p"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:duration="300"/>
</set>
謝謝你的提示。 AlphaAnimation在性能上似乎比其他的更重要。我將其改爲ScaleAnimation,現在它稍微好一點,但仍然不如我需要的那樣快。然後我創建了一個fakeAnimation類,擴展了Animation,完全沒有什麼,即使如此,animationlistener也沒有像我以** .setduration **設置間隔那樣快。 – UncleIstvan
您是否嘗試使用TraceView查看每種方法需要多長時間?這可能是因爲您每次都在實例化Animation/AnimationFactory。如果您要一遍又一遍地重複執行某些操作,並且每次都重新啓動動畫,而不是創建一個新的動畫,那麼在性能方面更好(儘管您需要小心),以便使用單個控制器。 – Codeman