测试已测试 | ✓ |
语言语言 | SwiftSwift |
许可证 | 自定义 |
发布最后发布 | 2017年2月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 Niklas Fahl 维护。
NSTimer
in Swift for delaying code or repeating code.受到 SwiftyTimer 的极大影响 - 作者: Radek Pietruszewski (radex)
将 "Sources" 文件夹中的文件添加到您的项目中,您就可以开始使用啦!
EasyTimer 所有的函数都是在一个 NSTimerInterval 调用的,这可以用 Ruby 风格来表示。
1.millisecond
1.3.millisecond
2.second
2.4.second
3.minute
3.5.minute
4.hour
4.6.hour
5.day
5.7.day
您可以轻松地安排三种类型的计时器(重复、有延迟的重复和延迟)- 每一个都会返回一个新的 NSTimer 实例
安排一个重复并立即调用块的计时器
// Will repeat code in block every 2 seconds starting immediately
2.second.interval {
print("Repeat immediately!")
}
// or with timer passed to the block
2.second.interval { (timer: NSTimer) -> Void in
print("Repeat immediately! Do something with timer.")
}
安排一个重复并在时间间隔后调用块的计时器
// Will repeat code in block every 2 seconds after a 2 second delay
2.second.delayedInterval {
print("Repeat after delay!")
}
// or with timer passed to the block
2.second.delayedInterval { (timer: NSTimer) -> Void in
print("Repeat after delay! Do something with timer.")
}
安排一个在时间间隔后只调用一次块的计时器
// Will execute code in block once after 2 second delay
2.second.delay {
print("Delay ended!")
}
// or with timer passed to the block
2.second.delay { (timer: NSTimer) -> Void in
print("Delay ended! Do something with timer.")
}
您还可以选择使用 timer(repeats:, delays:)
创建计时器并在以后启动它,这将返回一个新创建的 NSTimer 实例
let timer = 3.minute.timer(repeats: true, delays: true) {
print("Do something.")
}
// or with timer passed to the block
let timer = 3.minute.timer(repeats: true, delays: true) { (timer: NSTimer) -> Void in
print("Do something with timer.")
}
调用 start()
以安排使用 timer(repeats:, delays:)
创建的计时器。您可以可选地传递运行循环和运行循环模式
timer.start()
timer.start(modes: NSDefaultRunLoopMode, NSEventTrackingRunLoopMode)
调用 stop()
以使计时器无效并从运行循环中删除它们。您可以可选地传递运行循环和运行循环模式
timer.stop()
timer.stop(modes: NSDefaultRunLoopMode, NSEventTrackingRunLoopMode)
Niklas Fahl (fahlout) - iOS 开发者 (LinkedIn)
SwiftyTimer by Radek Pietruszewski (radex)
版权所有 © 2016 阿拉巴马大学信托委员会。保留所有权利。
在满足以下条件的情况下,允许以源代码和二进制形式重新分发和使用,无论是否进行修改:
本软件由版权所有者和贡献者提供“现状”且不提供任何明示或暗示的保证,包括但不限于适销性保证和针对特定目的的适用性保证。在任何情况下,版权所有者或贡献者不应对任何直接、间接、偶然、特殊、示范性或后果性损害(包括但不限于替代商品或服务的采购;使用、数据或利润的损失;或业务中断)承担责任,即使已告知此类损害的可能性,无论责任依据是什么,无论是合同、侵权责任,还是其他责任。