[swift] Swift Core Animation의 대칭 애니메이션 효과
Swift에서 Core Animation을 사용하면 다양한 애니메이션 효과를 구현할 수 있습니다. 이 중에서 대칭 애니메이션 효과를 적용해보겠습니다. 대칭 애니메이션은 뷰의 변화를 처음과 끝이 같은 형태로 반복하는 효과입니다.
먼저, 애니메이션을 적용할 뷰를 생성합니다. 다음 코드는 UIView를 생성하는 예시입니다.
let view = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
view.backgroundColor = .red
다음으로, 애니메이션 효과를 적용할 프로퍼티를 설정합니다. 이 예시에서는 view의 alpha 값을 변경하는 애니메이션을 적용해보겠습니다.
let animation = CABasicAnimation(keyPath: "opacity")
animation.fromValue = 1.0 // 시작 값
animation.toValue = 0.0 // 종료 값
animation.duration = 1.0 // 애니메이션의 지속 시간
CABasicAnimation
으로 생성한 animation
객체는 애니메이션의 시작값(fromValue
)과 종료값(toValue
), 그리고 애니메이션의 지속 시간(duration
)을 설정합니다.
다음으로, 애니메이션 효과를 반복할 수 있도록 설정합니다.
animation.repeatCount = .infinity // 무한 반복
animation.autoreverses = true // 역방향 애니메이션 적용
repeatCount
에 .infinity
를 할당하여 애니메이션을 무한히 반복하도록 설정합니다. autoreverses
를 true
로 설정하면 역방향 애니메이션도 적용되어 첫번째 애니메이션이 종료되면 역방향으로 애니메이션이 반복됩니다.
마지막으로, 애니메이션을 실행합니다.
view.layer.add(animation, forKey: "opacityAnimation")
add(_:forKey:)
메서드를 사용하여 애니메이션을 뷰의 레이어에 추가합니다.
이제 대칭 애니메이션 효과가 적용된 뷰를 확인할 수 있습니다.