最近,我正在研究android.view.animation.Animation的系统工具。

我重写了Animation.applyTransformation()方法,并记录了调用间隔时间,它约为16ms。

16ms的间隔表示60fps。这样可以使动画流畅播放。

但是为什么是16ms?谁控制这个?

如果我实现了一个动画线程来实现自定义动画,我通常会执行postDelayed(this, 16),这样我的线程将以60fps的速度运行,每次向Handler发布消息时,告诉它在Main Thread上进行一些UI更改。

android系统怎么样?

最佳答案

我认为您正在寻找Choreographer类:


  协调动画,输入和绘图的时间。编排人员从显示子系统接收定时脉冲(例如垂直同步),然后安排工作以进行渲染下一个显示帧的一部分。

07-25 21:32