Swift中可选的闭包属性
你如何在Swift中声明一个可选的闭包作为属性?
我正在使用这个代码:
var respondToButton:(sender: UIButton) -> Bool
但是编译器会抱怨这个属性在初始化器的末尾没有被初始化。 我相信我可以通过声明var作为一个可选项来解决这个问题,但是,我找不到正确的语法。
我如何将这个闭包属性声明为可选项?
我相信你只需要在括号中包装闭包types,就像这样:
var respondToButton:((sender: UIButton) -> Bool)?
或者,如果这是一个封闭types,你会经常使用,你可以创build一个typealias
,使其更具可读性:
typealias buttonResponder = (sender: UIButton) -> Bool
那么在你的class级里:
var respondToButton:buttonResponder?