Skip to content

Latest commit

 

History

History
25 lines (16 loc) · 935 Bytes

README.md

File metadata and controls

25 lines (16 loc) · 935 Bytes

YYFPSLabel

YYText 中计算当前界面每秒帧数FPS的小组件,见:YYText/Demo/YYTextDemo/YYFPSLabel

对于源码的学习和探讨:

主要原理

YYFPSLabel 实现思路:

  • CADisplayLink 默认每秒 60次;
  • CADisplayLink add 到 mainRunLoop 中;
  • 使用 CADisplayLinktimestamp 属性,在 CADisplayLink 每次 tick 时,记录上一次的 timestamp
  • 用 _count 记录 CADisplayLink tick 的执行次数;
  • 计算此次 tick 时, CADisplayLink 的当前 timestamp 和 _lastTimeStamp 的差值;
  • 如果差值大于1,fps = _count / delta,计算得出 FPS 数;

详见 代码

深入探讨

iOS查看当前界面帧数

Demo 效果: