gpt4 book ai didi

xcode - NSTimer timeInterval 参数不允许变量

转载 作者:可可西里 更新时间:2023-11-01 00:53:37 27 4
gpt4 key购买 nike

当我使用

timer = NSTimer.scheduledTimerWithTimeInterval(0.75, target: self, selector: Selector("drawInTime"), userInfo: nil, repeats: false)

它工作正常,但如果我想为 timeInterval 参数使用一个变量(而不是 0.75)

var waitTime = CGFloat(numberOMiliseconds) / 1000.0
timer = NSTimer.scheduledTimerWithTimeInterval(timeInterval: waitTime, target: self, selector: Selector("drawInTime"), userInfo: nil, repeats: false)

timer = NSTimer.scheduledTimerWithTimeInterval(waitTime, target: self, selector: Selector("drawInTime"), userInfo: nil, repeats: false)

然后我收到以下错误“Swift 编译器错误:调用中有额外参数‘selector’”。有人可以帮忙吗?

最佳答案

如果您查看 scheduledTimerWithTimeInterval 签名:

class func scheduledTimerWithTimeInterval(ti: NSTimeInterval, target aTarget: AnyObject, selector aSelector: Selector, userInfo: AnyObject?, repeats yesOrNo: Bool) -> NSTimer

您注意到该方法没有第一个参数的外部名称(这是方法的默认名称),因此您不必使用 timeInterval 外部名称。

此外,它的预期类型是 NSTimeInterval,这是 Double 的类型别名,但您传递的是 CGFloat

因此您应该将代码更改为:

var waitTime = Double(numberOMiliseconds) / 1000.0
timer = NSTimer.scheduledTimerWithTimeInterval(waitTime, target: self, selector: Selector("drawInTime"), userInfo: nil, repeats: false)

关于xcode - NSTimer timeInterval 参数不允许变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27088236/

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