0

我有一个显示为工作表的设置视图控制器。如果设置有效,它有一个按钮可以保存设置。如果设置有效,视图控制器将被关闭。如果它们无效,则用户会收到一条警报,说明设置无效。我的代码如下:

var settingsValidated = false

@IBAction func dismissSettings(sender: AnyObject) {

    if settingsValidated == true {

        dismissViewController(self)

    } else {

        let alert = NSAlert()
        alert.messageText = "Warning"
        alert.addButtonWithTitle("OK")
        alert.informativeText = "Your settings did not validate!"

        let window = NSApplication.sharedApplication().mainWindow
        let res = alert.beginSheetModalForWindow(window!, completionHandler: nil)

    }
}

如果 settingsValidated 设置为 true 一切都按预期工作,但是当我将 settingsValidated 设置为 false 时,没有任何反应。警报从不显示。我错过了什么?我在 Xcode 中没有收到任何错误。

请注意这个问题是关于OS X 而不是 iOS。

4

1 回答 1

-2

它没有出现,因为您没有对res对象做任何事情!- 所以删除它:

        alert.beginSheetModalForWindow(window!, completionHandler: nil)

NSAlert 类参考

于 2016-04-03T06:47:53.253 回答