[swift] 43.MarqueeLabel을 이용한 리뷰 텍스트 애니메이션 구현하기

마키스레이블(MarqueeLabel)은 스위프트(Swift) 언어로 개발된 라이브러리로, 텍스트를 스크롤링하는 애니메이션 효과를 구현할 수 있습니다. 이번 포스트에서는 MarqueeLabel을 활용하여 리뷰 텍스트 애니메이션을 구현하는 방법을 알아보겠습니다.

1. 프로젝트 설정

먼저, 프로젝트에 MarqueeLabel을 추가해야 합니다. 이를 위해 CocoaPods를 사용할 수 있습니다. Terminal을 열어 프로젝트 디렉토리로 이동한 다음, Podfile이 없다면 아래 명령어를 실행하여 새로 생성합니다.

pod init

그리고 Podfile에 다음과 같이 MarqueeLabel을 추가합니다.

target 'YourProjectName' do
  use_frameworks!
  pod 'MarqueeLabel/Swift'
end

저장 후, 다음 명령어를 실행하여 MarqueeLabel을 설치합니다.

pod install

2. MarqueeLabel 사용하기

MarqueeLabel을 사용하기 위해, 먼저 import MarqueeLabel 구문을 추가합니다. 그리고 원하는 위치에 MarqueeLabel을 추가하고, 다음과 같이 설정합니다.

let marqueeLabel = MarqueeLabel()
marqueeLabel.frame = CGRect(x: 100, y: 100, width: 200, height: 30)
marqueeLabel.type = .continuous
marqueeLabel.animationCurve = .linear
marqueeLabel.speed = .duration(8)
marqueeLabel.textAlignment = .center
marqueeLabel.text = "이곳에 리뷰 텍스트를 입력하세요."
view.addSubview(marqueeLabel)

위 코드에서 type 프로퍼티는 애니메이션의 종류를 설정하는데, .continuous는 텍스트가 반복해서 스크롤되는 애니메이션을 의미합니다. animationCurve는 애니메이션의 움직임을 조절하는데, .linear는 일정한 속도로 움직이는 애니메이션을 의미합니다. speed는 애니메이션 속도를 조절하는데, .duration(8)은 8초에 걸쳐서 텍스트가 전달되는 애니메이션을 의미합니다. textAlignment은 텍스트의 정렬 방식을 설정하는데, .center는 가운데 정렬을 의미합니다. 마지막으로 text에는 표시할 리뷰 텍스트를 입력하면 됩니다.

3. 애니메이션 제어

MarqueeLabel은 애니메이션을 시작하거나 정지시키는 메서드를 제공합니다. 예를 들어, 다음과 같이 애니메이션을 시작할 수 있습니다.

marqueeLabel.performAnimation()

애니메이션을 중지하려면 다음과 같이 호출합니다.

marqueeLabel.pauseAnimation()

다시 애니메이션을 재개하려면 다음과 같이 호출합니다.

marqueeLabel.resumeAnimation()

결론

이제 MarqueeLabel을 활용하여 리뷰 텍스트 애니메이션을 구현하는 방법을 알아보았습니다. MarqueeLabel을 사용하면 텍스트를 스크롤링하는 애니메이션을 쉽게 구현할 수 있으므로, 화려한 UI를 만들고 싶을 때 유용하게 활용할 수 있습니다.

참고 자료