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

 

  

posted @ 2015-03-05 15:55  OneByte  阅读(1544)  评论(0编辑  收藏  举报