swift 中 属性 的完成处理程序

Completion handler for property in swift

我正在尝试在 swift 中使用一个名为 MZFormSheetController 的控件。在给出的示例中,它提供了一个 属性 作为完成处理程序,如果我理解正确的话,但我在将它翻译成 Swift 时遇到了困难。任何帮助将不胜感激。

这是在 obj-c 示例中。

controller.didPresentContentViewControllerHandler = ^(UIViewController *content) {
    NSLog(@"DID PRESENT");
    [self setNeedsStatusBarAppearanceUpdate];
};

我尝试了多种变体并在网上进行了广泛的搜索,但找不到任何可以帮助我的东西,所以我被困在这里

controller.didPresentContentViewControllerHandler = (content:UIViewController() -> () {
    println("did present1")
})

以下是相关文档:Cocoa Docs:: MZFormSheetPresentationController:: didPresentContentViewControllerHandler

尝试在左大括号后添加一个变量

controller.didPresentContentViewControllerHandler = {
    vc in
    println("did present1")
})

如果你需要访问视图控制器,那么就这样做,

controller.didPresentContentViewControllerHandler = {
    controller in
    println("did present1")
}

或者如果你不需要对视图控制器的引用,你可以简单地做,

let controller = Controller()
controller.didPresentContentViewControllerHandler = {
    _ in
     println("did present1")
}