gpt4 book ai didi

ios - iOS 10 早期版本的计时器? (Xcode 8, swift 3)

转载 作者:搜寻专家 更新时间:2023-11-01 06:04:51 26 4
gpt4 key购买 nike

我很困惑!当我初始化 NSTimer() Xcode 告诉我它已重命名为 Timer()如果我初始化 Timer() Xcode 告诉我它只适用于 iOS 10.0 或更高版本。如果我想为早期版本的 iOS 使用计时器,我应该使用什么?!对我来说最奇怪的是似乎没有其他人遇到这个问题,所以我在这里错过了什么?我做错了什么?

是的,我明白了NSTimer()重命名为 Timer()在 Swift 3 中,这就是我在第一句话中从 Xcode 的警告消息中引用的字面意思,所以我不知道为什么每个人都想在这方面“纠正”我。其次,事实证明只剩下一种类型方法,我可以将其用于 iOS 10 之前的设备,即 Timer(timeInterval: <#T##TimeInterval#>, target: <#T##Any#>, selector: <#T##Selector#>, userInfo: <#T##Any?#>, repeats: <#T##Bool#>) .其他 4 种类型的方法都弹出一个警告,它只在 iOS 10 中可用,你可以在这里看到: Screenshot of Xcode warning

此外,没有类方法scheduledTimer()可用,尽管我确实记得它曾经在 Swift 2.2 中是它们的。 timer 没有任何可用的类方法object,这意味着上面提到的唯一可用的类型方法是我唯一的选择。

最佳答案

计时器 NSTimer。这在 iOS 10 中并不是新的。

if I initialize Timer()

永远不要通过Timer() 来初始化Timer。您必须调用类方法 scheduledTimer(timeInterval:target:selector:userInfo:repeats:)

iOS 10 中的新功能是类方法 scheduledTimer(withTimeInterval:repeats:block:)。你不能在 iOS 9 及之前的版本中调用它。但你不必这样做。只需在 iOS 9 和 iOS 10 中调用 scheduledTimer(timeInterval:target:selector:userInfo:repeats:),一切都会好起来的。

关于ios - iOS 10 早期版本的计时器? (Xcode 8, swift 3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40268040/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com