1
誰能告訴我爲什麼這段代碼給出錯誤消息「#selector'的參數不是指'@objc'方法,屬性或初始值設定項「?'#selector'的參數沒有引用'@objc'方法,屬性或初始值設定項
timer = Timer.scheduledTimer(timeInterval: 0.1, target: self, selector:#selector(updateTimer(until: 3)), userInfo: nil, repeats: true)
這裏的功能:
func updateTimer(until endTime: Int) {
counter -= 1
timeLabel.text = String(counter)
if counter == endTime {
step += 1
}
}
我曾嘗試:
1.添加@objc在函數的前面。
對於定時器參數是必需的。 *選擇器應該有以下簽名:timerFireMethod :(包括一個冒號來表示該方法需要一個參數)*附註 - 另外,在Swift 4中,類可能需要'@ objc'或'@ obcMembers' 。 – Sulthan
@Sulthan事實並非如此。不帶參數的'updateTimer()'也可以。 *應該*不是*必須有* ;-) – vadian