iOS-layer动画暂停,继续播放

2019-07-29  本文已影响0人  malgee
- (void)pauseLayer
{
    CFTimeInterval pausedTime = [self.layer convertTime:CACurrentMediaTime() fromLayer:nil];
    
    self.layer.speed = 0.0;

    self.layer.timeOffset = pausedTime;
}

- (void)resumeLayer
{
    CFTimeInterval pausedTime = [self.layer timeOffset];
    
    self.layer.speed = 1.0;
    
    self.layer.timeOffset = 0.0;
    
    self.layer.beginTime = 0.0;
    
    CFTimeInterval timeSincePause = [self.layer convertTime:CACurrentMediaTime() fromLayer:nil] - pausedTime;
    
    self.layer.beginTime = timeSincePause;
}
上一篇 下一篇

猜你喜欢

热点阅读