IOS/Swift 暂停和恢复图层动画

开始图层动画的代码: 

   //mySuperLayer父图层
    CFTimeInterval pausedTime = [self.mySuperLayer timeOffset];
    if (pausedTime > 0)//在暂停后才能使用
    {
        self.mySuperLayer.speed = 1.0;
        self.mySuperLayer.timeOffset = 0.0;
        self.mySuperLayer.beginTime = 0.0;
        CFTimeInterval timeSincePause = [self.mySuperLayer convertTime:CACurrentMediaTime() fromLayer:nil] - pausedTime;
        self.mySuperLayer.beginTime = timeSincePause;
    }

 暂停图层动画的代码:

    CFTimeInterval pausedTime = [self.mySuperLayer convertTime:CACurrentMediaTime() fromLayer:nil];
    self.mySuperLayer.speed = 0.0;
    self.mySuperLayer.timeOffset = pausedTime;

 

技术分享

例子下载:https://github.com/yoimhere/ZJLoadView/archive/master.zip

 

  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。