Swift中的可选闭包属性

时间:2014-06-11 18:38:52

标签: ios swift

如何在Swift中将可选闭包声明为属性?

我正在使用此代码:

    var respondToButton:(sender: UIButton) -> Bool

但编译器抱怨该属性未在初始化程序结束时初始化。我相信我可以通过将var声明为可选来解决这个问题,但是,我找不到正确的语法。

如何将此闭包属性声明为可选?

1 个答案:

答案 0 :(得分:76)

我相信你只需要在括号中包含闭包类型,如下所示:

var respondToButton:((sender: UIButton) -> Bool)?

或者,如果这是一个闭包类型,你经常会使用typealias来使它更具可读性:

typealias buttonResponder = (sender: UIButton) -> Bool

然后在你班上:

var respondToButton:buttonResponder?