我想使用 init(fireAt:interval:target:selector:userInfo:repeats:) 计时器在特定时间调用特定函数。但问题是我不知道如何初始化它。在文档中它说:
'您必须使用 add(_:forMode:) 将新计时器添加到运行循环' ( https://developer.apple.com/reference/foundation/timer/1415700-init )
但我不知道我该怎么做。任何人都可以为我解释一下吗?
我想使用 init(fireAt:interval:target:selector:userInfo:repeats:) 计时器在特定时间调用特定函数。但问题是我不知道如何初始化它。在文档中它说:
'您必须使用 add(_:forMode:) 将新计时器添加到运行循环' ( https://developer.apple.com/reference/foundation/timer/1415700-init )
但我不知道我该怎么做。任何人都可以为我解释一下吗?
尝试使用类函数scheduledTimerWithTimeInterval
。
斯威夫特 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
)