我想让我的方法的selector
个参数引用一个闭包属性,它们都存在于同一个范围内.例如,
func backgroundChange() {
self.view.backgroundColor = UIColor.blackColor()
self.view.alpha = 0.55
let backToOriginalBackground = {
self.view.backgroundColor = UIColor.whiteColor()
self.view.alpha = 1.0
}
NSTimer.scheduledTimerWithTimeInterval(0.5, target: self, selector: #selector(backToOriginalBackground), userInfo: nil, repeats: false)
}
然而,这显示了一个错误:Argument of #selector cannot refer to a property
.
当然,我可以定义一个新的、单独的方法,并将闭包的实现转移到该方法中,但对于这样一个小的实现,我希望它保持简洁.
是否可以将闭包设置为#selector
参数?