我想使用init(fireAt:interval:target:selector:userInfo:repeats :)计时器在特定时间调用特定函数。但问题是我不知道如何初始化它。在文档中它说:
'您必须使用add(_:forMode :)'将新计时器添加到运行循环中。 (https://developer.apple.com/reference/foundation/timer/1415700-init)
但我不知道我是怎么做的。有人可以帮我解释一下吗?
答案 0 :(得分:0)
尝试使用类函数scheduledTimerWithTimeInterval
。
Swift 3
var calender = Calendar(identifier: .gregorian)
calender.timeZone = TimeZone(abbreviation: "GMT")!
let tomorrow = calender.date(byAdding: .day, value: 1, to: Date())
let midnight = calender.startOfDay(for: tomorrow!)
let timer = Timer(
fireAt: midnight,
interval: 5,
target: self,
selector: #selector(didInterval),
userInfo: nil,
repeats: false
)