最近,我正在研究android.view.animation.Animation
的系统工具。
我重写了Animation.applyTransformation()方法,并记录了调用间隔时间,它约为16ms。
16ms的间隔表示60fps。这样可以使动画流畅播放。
但是为什么是16ms?谁控制这个?
如果我实现了一个动画线程来实现自定义动画,我通常会执行postDelayed(this, 16)
,这样我的线程将以60fps的速度运行,每次向Handler
发布消息时,告诉它在Main Thread
上进行一些UI更改。
android系统怎么样?
最佳答案
我认为您正在寻找Choreographer
类:
协调动画,输入和绘图的时间。编排人员从显示子系统接收定时脉冲(例如垂直同步),然后安排工作以进行渲染下一个显示帧的一部分。