[swift] 46.MarqueeLabel을 이용한 실시간 운송 정보 스크롤 효과 구현하기
운송 정보를 실시간으로 표시하고 스크롤 효과를 주기 위해 MarqueeLabel을 사용할 수 있습니다. MarqueeLabel은 UILabel의 하위 클래스로, 긴 텍스트를 자동으로 스크롤하면서 보여줍니다.
MarqueeLabel 설치 및 설정
MarqueeLabel을 사용하기 위해서는 먼저 해당 라이브러리를 프로젝트에 설치해야 합니다. CocoaPods를 사용하는 경우 Podfile에 다음과 같이 추가합니다:
pod 'MarqueeLabel'
설치가 완료되면, 해당 라이브러리를 import 합니다:
import MarqueeLabel
MarqueeLabel 사용 방법
- 먼저, MarqueeLabel 객체를 생성합니다:
let marqueeLabel = MarqueeLabel(frame: CGRect(x: 0, y: 0, width: 200, height: 20), duration: 8, fadeLength: 10)
- duration: 텍스트가 한 번 스크롤되는 데 걸리는 시간 (초 단위)
- fadeLength: 텍스트가 스크롤되기 전에 페이드 아웃되는 길이
- 텍스트를 설정합니다:
marqueeLabel.text = "운송 정보를 실시간으로 표시합니다."
- 애니메이션을 시작합니다:
marqueeLabel.type = .continuous
marqueeLabel.speed = .duration(8)
marqueeLabel.animationCurve = .easeInOut
marqueeLabel.restartLabel()
- type: 스크롤 방향 설정 (좌우 또는 위아래)
- speed: 스크롤 속도 설정 (duration: 시간 단위, rate: 픽셀 단위)
- animationCurve: 애니메이션의 속도 곡선 설정
- MarqueeLabel을 원하는 위치에 추가합니다:
view.addSubview(marqueeLabel)
예시
아래는 MarqueeLabel을 사용하여 실시간 운송 정보를 표시하는 예시 코드입니다:
import UIKit
import MarqueeLabel
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// MarqueeLabel 생성
let marqueeLabel = MarqueeLabel(frame: CGRect(x: 0, y: 0, width: 200, height: 20), duration: 8, fadeLength: 10)
marqueeLabel.text = "운송 정보를 실시간으로 표시합니다."
marqueeLabel.type = .continuous
marqueeLabel.speed = .duration(8)
marqueeLabel.animationCurve = .easeInOut
marqueeLabel.restartLabel()
// MarqueeLabel 추가
view.addSubview(marqueeLabel)
}
}
마무리
MarqueeLabel은 텍스트 스크롤 효과를 쉽게 구현할 수 있는 라이브러리입니다. 위 예시를 참고하여 실시간 운송 정보를 표시해보세요. 자세한 설정 옵션 및 기능은 MarqueeLabel의 공식 문서를 참조하시기 바랍니다.