1、定义属性
var displayLinkTimer:CADisplayLink? = nil
2、init
displayLinkTimer = CADisplayLink(target: self, selector: #selector(self.handlePaletteData)) displayLinkTimer?.isPaused = true displayLinkTimer?.frameInterval = 5 //每5帧处理一次 大概 一秒60/5次 displayLinkTimer?.add(to: RunLoop.current, forMode: .commonModes)
这里有两点:
isPause是开启与暂停
frameInterval是处理帧间隔,正常我们的屏幕刷新频率是每秒60次(60HZ),设置2,就是每两帧处理一次,也就是一秒30次
3、处理方法
func handlePaletteData{ //处理逻辑 }