0
我呼籲你的知識,因爲我是編程初學者。我想通過Playground實例化一個計時器。我的計時器是 - 我認爲 - 正確配置(isValid和TimeInterval),也是Playground設置,但是當我想將消息發送到其目標時,我在下面顯示錯誤消息。我搜索了蘋果的文檔,論壇,書籍,但是我沒有擺脫它。抱歉。非常感謝你的幫助。錯誤EXC_BAD_INSTRUCTION - 如何設置timeInterval方法?
我呼籲你的知識,因爲我是編程初學者。我想通過Playground實例化一個計時器。我的計時器是 - 我認爲 - 正確配置(isValid和TimeInterval),也是Playground設置,但是當我想將消息發送到其目標時,我在下面顯示錯誤消息。我搜索了蘋果的文檔,論壇,書籍,但是我沒有擺脫它。抱歉。非常感謝你的幫助。錯誤EXC_BAD_INSTRUCTION - 如何設置timeInterval方法?
定時器呼籲你給它的目標選擇。在你的情況下,它試圖調用AnyObject.timerFire()
這實際上並不存在。你的timerFire
的實現是一個全局函數,它不是一個類型的一部分,所以不能使用,因爲Timer需要一個目標。
選擇器需要是暴露給ObjC的方法,所以類型需要是一個類。
下面是一個簡單的例子。
import Foundation
import PlaygroundSupport
class Foo {
@objc func timerFired() {
print("Timer Fired")
}
}
let f = Foo()
let timer = Timer.scheduledTimer(timeInterval: 1, target: f, selector: #selector(Foo.timerFired), userInfo: nil, repeats: false)
print("Scheduled Timer")
PlaygroundPage.current.needsIndefiniteExecution = true
您尚未激活計時器 – Alexander