[swift] 81.MarqueeLabel을 이용한 가격 정보 스크롤 효과 구현하기

스크롤 효과를 사용하여 가격 정보를 보여주는 경우가 많습니다. 이번에는 MarqueeLabel을 사용하여 가격 정보를 스크롤하는 효과를 구현해보겠습니다.

MarqueeLabel이란?

MarqueeLabel은 UILabel을 상속 받아 만들어진 커스텀 라이브러리로 스크롤 효과를 쉽게 구현할 수 있습니다. 이를 사용하여 가격 정보를 스크롤하는 효과를 구현할 수 있습니다.

MarqueeLabel 설치하기

MarqueeLabel을 사용하기 위해서는 Cocoapods를 이용하여 설치해야 합니다. Podfile에 다음과 같은 코드를 추가해주세요.

pod 'MarqueeLabel/Swift'

그리고 터미널에서 pod install 명령어를 실행하여 MarqueeLabel을 설치해주세요.

가격 정보 스크롤 효과 구현하기

이제 MarqueeLabel을 이용하여 가격 정보의 스크롤 효과를 구현해보겠습니다.

import MarqueeLabel

class PriceViewController: UIViewController {
    
    @IBOutlet weak var priceLabel: MarqueeLabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 가격 정보 설정
        let price: Double = 1000000
        let formatter = NumberFormatter()
        formatter.numberStyle = .decimal
        let formattedPrice = formatter.string(from: NSNumber(value: price)) ?? ""
        
        // MarqueeLabel 설정
        priceLabel.type = .continuous
        priceLabel.animationCurve = .easeInOut
        priceLabel.fadeLength = 10.0
        priceLabel.leadingBuffer = 30.0
        priceLabel.text = formattedPrice
    }
}

위의 코드에서는 MarqueeLabel을 사용하기 위해 MarqueeLabel을 import하고 priceLabel IBOutlet을 선언합니다. viewDidLoad에서 가격 정보를 설정하고 MarqueeLabel의 속성을 설정합니다. type은 스크롤 타입을 설정하고, animationCurve는 애니메이션 효과를 설정합니다. fadeLengthleadingBuffer는 스크롤 효과의 속도와 여백을 설정하는 값입니다.

실행 결과 확인하기

위의 코드를 실행하면 MarqueeLabel을 사용하여 가격 정보가 스크롤되는 화면을 확인할 수 있습니다.

결론

MarqueeLabel을 사용하면 스크롤 효과를 쉽게 구현할 수 있습니다. 가격 정보나 긴 텍스트를 스크롤하는 효과에 활용할 수 있으며, 다양한 속성을 설정하여 원하는 스타일로 표현할 수 있습니다.