[iOS / Swift] Heartbeat Animation 구현하기

Kerri·2021년 7월 8일
0

iOS

목록 보기
10/11
post-thumbnail

안녕하세요 !

오늘은 hearbeat Animation을 구현해보겠습니다.

이 두근두근 효과는 CAKeyframeAnimation 을 이용해서 구현할 수 있습니다.
펄스 사이에 멈춤없이 작동하는 걸 확인할 수 있어요 :)

CAKeyframeAnimation 은 애니메이션을 keyFrame 단위로 쪼개어 각각의 keyFrame마다 효과를 주거나 다른 애니메이션을 하도록 설정할 수 있도록 해주는 클래스입니다.

let animation = CAKeyframeAnimation(keyPath: "transform.scale")

animation.values = [0.8, 1.0, 0.8]
animation.keyTimes = [0, 0.5, 1]
animation.duration = 1.0
animation.repeatCount = Float.infinity
imageView.layer.add(animation, forKey: "pulse")

  • keyPath
    원하는 애니메이션의 Path를 지정해줍니다.
    (중요 ❗️ 우리는 transform.scale 을 이용합니다.)
  • values
    keyTimes로 쪼갠 Frame에 원하는 scale을 지정해줍니다. (비율)
  • keyTimes
    duration 동안 Frame을 얼마나 나눌지 정합니다.
  • duration
    애니메이션의 재생길이입니다. 단위는 초단위입니다.
  • reapeatCount
    반복횟수를 정합니다. .infinity는 무한반복하겠다는 의미입니다.

이렇게 설정을 완료한다음 애니메이션을 넣어줄 view layer에 add해줍니다.
add할때 넣는 키는 원하시는 문자열로 해주시면 됩니다.

중요한건 CAKeyframeAnimation keyPath를 transform.scale 로 해줘야 된다는 것입니다 !

참고: CAKeyframeAnimation 대하여

profile
안녕하세요 !

0개의 댓글