AsyncTimer
🌟
Features
- Can work as a countdown timer
- Can work as a periodic Timer
- Can work as a scheduled timer
- Working with user events (like: scrolling, tapping, ...)
- Functionality (start, pause, resume, stop, restart)
- Support for clousure (never more selectors)
Overview
💻
Demo
pod try AsyncTimer
⚠️
Requirements
- iOS 9.0+ | macOS 10.10+ | tvOS 9.0+ | watchOS 2.0+
- Swift 3.0+
👥
Communication
- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
📗
Installation
CocoaPods
pod 'AsyncTimer', '~> 2.2'
Carthage
github "Decybel07/AsyncTimer", ~> 2.2
Swift Package Manager
.Package(url: "https://github.com/Decybel07/AsyncTimer.git", majorVersion: 2)
📘
Usage
Import AsyncTimer at the top of each Swift file that will use framework.
import AsyncTimer
Countdown Timer
Counts down from 25 to 0 every 100 ms
AsyncTimer(
interval: .milliseconds(100),
times: 25,
block: { value in
print(value)
},
completion: { value in
print("finished")
}
)
Periodic Timer
Update every 100 ms
AsyncTimer(interval: .milliseconds(100), repeats: true) {
print("updated")
}
Scheduled Timer
Do something after 2 seconds
AsyncTimer(interval: .seconds(2)) {
print("something to do")
}
🤓
Author
Adrian Bobrowski (Decybel07), [email protected]
🔑
License
AsyncTimer is available under the MIT license. See the LICENSE file for more info.