[swift] 74.MarqueeLabel을 이용한 피드백 메시지 스크롤 효과 구현하기

안녕하세요! 이번에는 MarqueeLabel을 이용하여 피드백 메시지에 스크롤 효과를 구현하는 방법에 대해 알아보겠습니다. MarqueeLabel은 UILabel의 하위 클래스로, UILabel의 내용을 스크롤링하는 효과를 제공합니다.

MarqueeLabel 라이브러리 설치하기

먼저, MarqueeLabel을 사용하기 위해 Cocoapods를 통해 라이브러리를 설치해야 합니다. Podfile에 다음과 같이 추가한 후, pod install 명령어를 실행해주세요:

pod 'MarqueeLabel'

스크롤 효과를 적용할 UILabel 생성하기

MarqueeLabel을 사용하여 스크롤 효과를 적용할 UILabel을 생성합니다. 코드 상에서 UILabel을 생성하고, MarqueeLabel로 타입캐스팅을 해주는 방법을 보여드리겠습니다:

import MarqueeLabel

class FeedbackViewController: UIViewController {
    @IBOutlet weak var feedbackLabel: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()

        if let marqueeLabel = feedbackLabel as? MarqueeLabel {
            marqueeLabel.type = .continuous
            marqueeLabel.scrollDuration = 15
            marqueeLabel.animationCurve = .easeInOut
            marqueeLabel.fadeLength = 10
        }
    }
}

위 코드에서는 feedbackLabel이라는 UILabel에 MarqueeLabel로 타입캐스팅을 한 후, 스크롤 효과를 설정하고 있습니다. type.continuous로 설정하면, 텍스트가 스크롤링되는 효과를 계속 유지할 수 있습니다. scrollDuration은 스크롤이 완료되기까지 걸리는 시간을 지정합니다. animationCurve는 스크롤 애니메이션의 속도 곡선을 설정하는 속성입니다. fadeLength는 끝부분의 텍스트가 흐려지는 부분의 길이를 설정합니다.

피드백 메시지 넣고 스크롤 효과 보기

위 코드에서는 feedbackLabel에 스크롤 효과를 적용했지만, 실제로 피드백 메시지를 설정하여 스크롤 효과를 확인해 볼 수 있습니다. 예를 들어, viewDidLoad() 메서드에서 feedbackLabel.text를 다음과 같이 설정할 수 있습니다:

feedbackLabel.text = "이 피드백 메시지는 스크롤 효과를 보여주기 위한 메시지입니다."

위와 같이 텍스트를 설정하고 앱을 실행하면, feedbackLabel 내용이 스크롤링되는 효과를 볼 수 있습니다.

이렇게 MarqueeLabel을 이용하여 피드백 메시지에 스크롤 효과를 구현할 수 있습니다. MarqueeLabel 라이브러리를 사용하면 간편하게 UILabel에 텍스트 스크롤링 효과를 적용할 수 있으므로, 다양한 앱에서 활용할 수 있습니다.

참고 자료