efprefix/efautoscrolllabel
A label which can scroll when text length beyond the width of label, in Swift. Converted from [AutoScrollLabel](https://github.com/firewolf-ljw/AutoScrollLabel/commit/6981994ad64ab3b29b87a423109f556134c83b41)
Overview
<img src="https://raw.githubusercontent.com/EFPrefix/EFAutoScrollLabel/master/Assets/example.gif" width = "62.5%"/>
Example
To run the example project, clone the repo, and run pod install from the Example directory first.
Requirements
- Xcode 16+
- Swift 6.0+
Installation
CocoaPods
EFAutoScrollLabel is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "EFAutoScrollLabel"Swift Package Manager
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the Swift compiler.
Once you have your Swift package set up, adding EFAutoScrollLabel as a dependency is as easy as adding it to the dependencies value of your Package.swift.
dependencies: [
.package(url: "https://github.com/EFPrefix/EFAutoScrollLabel.git", .upToNextMinor(from: "6.0.0.0"))
]Setup
Simply initialize a EFAutoScrollLabel the same way you set up a regular UILabel:
let myLabel = EFAutoScrollLabel(frame: CGRect(x: 10, y: 10, width: 200, height: 40))
self.view.addSubview(myLabel)Use
1. Import EFAutoScrollLabel module where you want to use it:
import EFAutoScrollLabel2. Initialize a EFAutoScrollLabel and set some parameter:
let myLabel = EFAutoScrollLabel(frame: CGRect(x: 10, y: 10, width: 200, height: 40))
myLabel.backgroundColor = UIColor(red: 253.0 / 255.0, green: 255.0 / 255.0, blue: 234.0 / 255.0, alpha: 1)
myLabel.textColor = UIColor(red: 249.0 / 255.0, green: 94.0 / 255.0, blue: 22.0 / 255.0, alpha: 1)
myLabel.font = UIFont.systemFont(ofSize: 13)
myLabel.labelSpacing = 30 // Distance between start and end labels
myLabel.pauseInterval = 1.7 // Seconds of pause before scrolling starts again
myLabel.scrollSpeed = 30 // Pixels per second
myLabel.textAlignment = NSTextAlignment.left // Centers text when no auto-scrolling is applied
myLabel.fadeLength = 12 // Length of the left and right edge fade, 0 to disable
myLabel.scrollDirection = EFAutoScrollDirection.left
self.view.addSubview(myLabel)3. AutoLayout is also supported.
License
EFAutoScrollLabel is available under the MIT license. See the LICENSE file for more info.
Package Metadata
Repository: efprefix/efautoscrolllabel
Default branch: master
README: README.md