[swift] CoreAnimation 레이어 애니메이션 중지/일시정지

CoreAnimation을 사용하여 애니메이션을 만들었지만 동적으로 애니메이션을 중지하거나 일시정지해야 하는 경우가 있습니다. 이 글에서는 Swift로 CoreAnimation 애니메이션을 중지하고 일시정지하는 방법을 알아보겠습니다.

애니메이션 중지

CoreAnimation 애니메이션을 중지하는 방법은 해당 레이어의 pause() 메서드를 호출하는 것입니다. 예를 들어, CALayer 인스턴스가 animationLayer 인 경우, 다음과 같이 애니메이션을 중지할 수 있습니다.

animationLayer.pause()

애니메이션 일시정지

애니메이션을 잠시 멈추고 나중에 다시 시작해야 하는 경우에는 speed 속성을 사용하여 애니메이션의 속도를 조절할 수 있습니다. 예를 들어, 애니메이션을 일시정지하려는 경우에는 다음과 같이 speed 속성을 0으로 설정합니다.

animationLayer.speed = 0

이후에 애니메이션을 다시 시작하려면 speed 속성을 1로 설정하여 애니메이션을 재개할 수 있습니다.

animationLayer.speed = 1

이렇게 함으로써 CoreAnimation 애니메이션을 중지하거나 일시정지할 수 있습니다.

애니메이션을 다루는 방법에 대한 더 자세한 내용을 찾고 싶다면 Core Animation Programming Guide 에서 추가 정보를 확인할 수 있습니다.