1
具體來說,當一個任務可以用選擇器或不用選擇器補充時,是否有任何(客觀)理由偏好一種方式而不是另一種方式?是否有任何理由在Swift中使用選擇器?
A)使用選擇:
let timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(timerAction()), userInfo: nil, repeats: true)
dynamic func timerAction() {
print("foo")
}
B)沒有選擇器:
例如,一個NSTimer可以以兩種方式運行上的間隔的方法
let timer = Timer.scheduledTimer(withTimeInterval: 1, repeats: true) { _ in
self.timerAction()
}
func timerAction() {
print("foo")
}
兩個版本是完全有效的,那麼是否有任何(客觀)理由相互偏好?
塊版本是一個iOS10 +方法只適用於您的情況。如果您的目標是iOS9,則無法使用它。 – Larme
@Larme有趣。兩者都在macOS 10.12上工作,但我不能早些講話。 –
@BrandonBradley只需查看文檔。在MacOS 10.12和iOS 10.0中添加了塊版本的Timer.scheduledTimer。 – rmaddy