-2
我有一個設置視圖控制器顯示爲工作表。它有一個按鈕,可以在設置有效時保存設置。如果設置有效,視圖控制器將被解除。如果它們無效,用戶會收到一條警報,提示設置無效。我的代碼如下:NSAlert beginSheetModalForWindow不顯示警報
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假沒有任何反應。警報從不顯示。我錯過了什麼?我在Xcode中沒有收到任何錯誤。
請注意這個問題是關於OS X NOT iOS。
它仍然無法正常工作。 – user1822824
@ user1822824:「它仍然不起作用」告訴我,除了*你*之外,沒有其他人明確地做錯了什麼。我從最後一行刪除了'let res =',它對我來說工作得很好。 –
我在Xcode中沒有收到任何錯誤,但是單擊此按鈕時警告不會顯示。我終於能夠通過對我的NSAlert代碼進行一些修改來獲得它。我將發佈修改後的代碼作爲答案。 – user1822824