我正在为Android平台开发游戏。布局包括应该在不停止从上到下移动的元素。我决定使用Handler
并设置handler.postDelayed(this, 10)
动画"步骤"是5px
(实际上不是px
,但对于讨论并不重要)。
setX(), setY()
来更改元素位置。
我该怎么做才能使动画流畅?我应该调整上面提到的数字吗?另外,我已经了解方法setWillNotDraw(boolean b)
可能有用 - 如何明智地使用它?
如果你可以指导我应该做什么,我会很高兴(有点"做和不做')。
谢谢!
答案 0 :(得分:1)
正如pskink所暗示的那样ViewPropertyAnimator比自己制作动画更友好。如果您希望/需要手动管理它,请考虑View.postOnAnimation而不是Handler.postDelayed以使用新的动画帧运行更新。
无论您如何移动对象,都要警惕屏幕上有多少视图。移动一个视图可以强制整个视图层次结构重做其布局 - 这肯定会扼杀动画速度。尝试以空的布局动画单个视图。
Profiling对于跟踪性能问题非常有帮助。