Swift、XCode:有没有办法将变量用作 NSTimer.scheduledTimerWithTimeInterval Int?
Swift, XCode: Is there a way to use a variable as a NSTimer.scheduledTimerWithTimeInterval Int?
我有一个函数,我正在尝试让它每次被调用时,它都会使间隔计时器无效并使间隔更快。当我尝试在 NSTimer.scheduledTimerWithTimeInterval 的代码中放置一个 Int 变量时,Xcode 出现错误。我刚开始 swift 和 Xcode,所以我对此很陌生。感谢您的帮助。
所有变量均在功能激活前设置。
func makeIntervalFaster() {
timer.invalidate()
value++
var timerValue:Int = 1/value
timer = NSTimer.scheduledTimerWithTimeInterval(timerValue, target: self, selector: Selector("action"), userInfo: nil, repeats: true)
}
间隔应该是 NSTimeInterval,它是 Double 的别名。你的论点是一个 Int。
所以用 :Double
替换 :Int
应该可以。您可能还必须将 value
转换为 Double。 Swift 不喜欢隐式转换。
我有一个函数,我正在尝试让它每次被调用时,它都会使间隔计时器无效并使间隔更快。当我尝试在 NSTimer.scheduledTimerWithTimeInterval 的代码中放置一个 Int 变量时,Xcode 出现错误。我刚开始 swift 和 Xcode,所以我对此很陌生。感谢您的帮助。
所有变量均在功能激活前设置。
func makeIntervalFaster() {
timer.invalidate()
value++
var timerValue:Int = 1/value
timer = NSTimer.scheduledTimerWithTimeInterval(timerValue, target: self, selector: Selector("action"), userInfo: nil, repeats: true)
}
间隔应该是 NSTimeInterval,它是 Double 的别名。你的论点是一个 Int。
所以用 :Double
替换 :Int
应该可以。您可能还必须将 value
转换为 Double。 Swift 不喜欢隐式转换。