美文网首页
用CADisplayLink绘图不卡

用CADisplayLink绘图不卡

作者: 闲得一B | 来源:发表于2016-05-28 00:00 被阅读75次
    结论:
    setNeedDisplay只是给当前控件添加刷新标记,并不会马上调用drawRect方法。
    CADisplayLink每秒刷新60次,和屏幕刷新频率一样,所以不会卡。
    

    在绘图的时候需要用到定时器,通常NSTimer很少用于绘图,
    因为调度优先级比较低,并不会准时调用。

    drawRect方法不能手动调用,因为需要系统自动设置上下文。
    通过setNeedDisplay或者setneeddisplayinrect方法间接调用。

    用CADsiplayLink创建定时器,需要加入循环。

    CADisplayLink每次屏幕刷新的时候都会调用,屏幕一般一秒刷新60秒。
    通过上下文绘图时需要调用setNeedsDisplay,
    而setNeedDisplay并不会马上调用drawRect方法,
    其实setNeedsDisplay这个方法只是给当前控件添加刷新的标记,
    等下一次屏幕刷新的时候才会调用drawRect,而屏幕的刷新频率一般是60次,
    所以屏幕的刷新频率和CADisplayLink刷新频率一样,所以不会卡。

    相关文章

      网友评论

          本文标题:用CADisplayLink绘图不卡

          本文链接:https://www.haomeiwen.com/subject/vuefdttx.html