Posso fazer #selector se referir a um fechamento no Swift?
Eu quero fazer umaselector
O argumento do meu método se refere a uma propriedade de fechamento, ambos existem no mesmo escopo. Por exemplo,
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)
}
No entanto, isso mostra um erro:Argument of #selector cannot refer to a property
.
É claro que posso definir um método novo e separado e mover a implementação do fechamento para ele, mas quero mantê-lo econômico para uma implementação tão pequena.
É possível definir um fechamento para#selector
argumento?