質問: CGRectMake(self.scWid*0.695, self.scHei*0.373, 0, self.scHei*0.009) //return }, completion: {(finished: Bool) -> Void in // アニメーション終了後の処理 }) } func timerbarStop(){ //アニメーションの一時停止 //ここの書き方をご教示いただきたいのです } func timerbarStopClear(){ //アニメーションの一時停止を解除 //ここの書き方をご教示いただきたいのです }
回答: StarckOverflowに回答があります。 とりあえず動かすならこんな感じになると思います。 ``` func timerbarStop(){ //アニメーションの一時停止 pauseLayer(myImageView.layer) } func timerbarStopClear(){ //アニメーションの一時停止を解除 resumeLayer(myImageView.layer) } func pauseLayer(layer: CALayer) { let pausedTime: CFTimeInterval = layer.convertTime(CACurrentMediaTime(), fromLayer: nil) layer.speed = 0.0 layer.timeOffset = pausedTime } func resumeLayer(layer: CALayer) { let pausedTime: CFTimeInterval = layer.timeOffset layer.speed = 1.0 layer.timeOffset = 0.0 layer.beginTime = 0.0 let timeSincePause: CFTimeInterval = layer.convertTime(CACurrentMediaTime(), fromLayer: nil) - pausedTime layer.beginTime = timeSincePause } ``` 余談ですが今度からはコード部分は ````〜```` で囲むと見やすくなって回答がつきやすくなると思いますよ。