[swift] 53.MarqueeLabel을 이용한 실시간 예약 정보 스크롤 효과 구현하기
많은 예약 정보를 효과적으로 표시하고 싶은 경우, MarqueeLabel을 사용하여 실시간으로 스크롤 효과를 구현할 수 있습니다. MarqueeLabel은 UILabel 클래스의 subclass로, 텍스트가 화면을 벗어나는 경우 자동으로 스크롤 되도록 설정할 수 있습니다.
MarqueeLabel 설치하기
MarqueeLabel을 사용하기 위해서는 먼저 설치해야 합니다.
- CocoaPods를 사용하는 경우, Podfile에 다음을 추가합니다:
pod 'MarqueeLabel/Swift'
- Carthage를 사용하는 경우, Cartfile에 다음을 추가합니다:
github "cbpowell/MarqueeLabel" "swift3"
- 수동으로 설치할 경우, MarqueeLabel GitHub 페이지에서 최신 버전을 다운로드하고 프로젝트에 추가합니다.
MarqueeLabel 사용하기
MarqueeLabel을 사용하기 위해 다음 단계를 따릅니다.
- MarqueeLabel 클래스를 import 합니다:
import MarqueeLabel
- 텍스트가 스크롤 될 UILabel을 생성합니다:
let marqueeLabel = MarqueeLabel(frame: CGRect(x: 20, y: 100, width: 200, height: 20), duration: 8.0, fadeLength: 10.0)
frame
: MarqueeLabel의 위치 및 크기를 지정합니다.duration
: 스크롤이 완료되는 데 걸리는 시간을 초 단위로 지정합니다.fadeLength
: 텍스트가 화면 밖으로 사라지기 전에 페이드 아웃되는 길이를 지정합니다.
- MarqueeLabel에 텍스트를 설정합니다:
marqueeLabel.text = "예약 정보 스크롤 효과!"
- MarqueeLabel의 스크롤 방향과 속도를 설정합니다:
marqueeLabel.type = .continuous
marqueeLabel.speed = .rate(50)
type
: 스크롤 방향을 설정합니다..continuous
는 가로 방향 스크롤을 의미합니다.speed
: 스크롤 속도를 설정합니다..rate(50)
은 50 포인트/초로 설정한 것을 의미합니다.
- MarqueeLabel을 서브뷰로 추가합니다:
self.view.addSubview(marqueeLabel)
- MarqueeLabel을 시작합니다:
marqueeLabel.reinstateLabel()
마무리
MarqueeLabel을 사용하면 예약 정보와 같은 긴 텍스트를 효과적으로 스크롤로 표시할 수 있습니다. 위에서 설명한 단계를 따라하면 실시간으로 스크롤 효과를 구현할 수 있습니다. 앱의 사용자에게 더 나은 사용자 경험을 제공하기 위해 MarqueeLabel을 활용해보세요.