如何检测到弹出窗口已完成?

时间:2015-02-13 13:39:50

标签: macos cocoa swift

在我使用Swift构建的OS X应用程序中,当用户未登录时,我会显示一个弹出框。用户通过弹出窗口登录。然后我如何在启动弹出窗口的视图控制器上检测到弹出窗口已被解除?

2 个答案:

答案 0 :(得分:1)

正如@Koen所提到的,你应该检查NSPopoverDidCloseNotification并调用方法,如果popover关闭了:

NSNotificationCenter.defaultCenter().notificationCenter.addObserver(
    self,
    selector: "popOverClosed:",
    name:NSPopoverDidCloseNotification,
    object: nil
)

这样,每次弹出窗口解析时都会调用popOverClosed方法。

func popOverClosed(sender : AnyObject) {
    //PopOver Dismissed
}

答案 1 :(得分:0)

收听NSPopoverDidCloseNotification通知。