SwiftTimer 2.0

SwiftTimer 2.0

测试已测试
语言语言 SwiftSwift
许可 MIT
发布最后发布2017年11月
SwiftSwift 版本4.0
SPM支持 SPM

Liu Dong 维护。



  • liudong

简单且优雅的计时器

中文介绍:打造一个优雅的 Timer

与 NSTimer 比较

  • 无 retain 循环
  • 与 RunLoop 解耦
  • 支持 GCD 队列
  • 支持动态更改间隔
  • 支持闭包语法

使用方法

单个计时器

let timer = SwiftTimer(interval: .seconds(2)) {
    print("fire")
}
timer.start()

重复计时器

let timer = SwiftTimer.repeaticTimer(interval: .seconds(1)) {
    print("fire")
}
timer.start()

动态更改间隔

let timer = SwiftTimer.repeaticTimer(interval: .seconds(5)) { timer in
    print("doSomething")
}
timer.start()  // print doSomething every 5 seconds

func speedUp(timer: SwiftTimer) {
    timer.rescheduleRepeating(interval: .seconds(1))
}
speedUp(timer) // print doSomething every 1 second 

节流

SwiftTimer.throttle(interval: .seconds(0.5), identifier: "throttle") {
    search(inputText)
}

倒计时计时器

let timer = SwiftCountDownTimer(interval: .fromSeconds(0.1), times: 10) { timer , leftTimes in
    label.text = "\(leftTimes)"
}
timer.start()

安装