使用 Swift 創(chuàng)建 NSAlert

我們都知道如何用 Objective-C 創(chuàng)建 NSAlert:

    NSAlert *alert = [[[NSAlert alloc] init] autorelease];
    [alert addButtonWithTitle:@"Delete"];
    [alert addButtonWithTitle:@"Cancel"];
    [alert setMessageText:@"Delete the document?"];
    [alert setInformativeText:@"Are you sure you would like to delete the document?"];
    [alert setAlertStyle:NSWarningAlertStyle];
    [alert beginSheetModalForWindow:[self window] modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:nil];

假設(shè) alert 用于確認(rèn)用戶是否想刪除某個(gè)文檔。

我們希望“刪除”按鈕運(yùn)行刪除函數(shù),“取消”按鈕只需隱藏 alert 即可。

但如何用 Swift 實(shí)現(xiàn)呢?

從 OS X 10.10 Yosemite 版本開始 beginSheetModalForWindow:modalDelegate 就已經(jīng)被棄用了

func dialogOKCancel(question: String, text: String) -> Bool {
    let myPopup: NSAlert = NSAlert()
    myPopup.messageText = question
    myPopup.informativeText = text
    myPopup.alertStyle = NSAlertStyle.warning
    myPopup.addButton(withTitle: "好的")
    myPopup.addButton(withTitle: "取消")
    return myPopup.runModal() == NSAlertFirstButtonReturn
}

let answer = dialogOKCancel(question: "確認(rèn)?", text: "請(qǐng)選擇。")

該方法根據(jù)用的選擇返回 truefalse。

NSAlertFirstButtonReturn 表示添加進(jìn) alert 的第一個(gè)按鈕,這里就是“好的”。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 人,活著簡單,活下去不易;很好的活下去很難。 世上最能經(jīng)受苦難的還是人類自己,無法想象人的內(nèi)心究竟有多大才能盛得下...
    夜空天下閱讀 541評(píng)論 5 8
  • 今天是國際香檳日!知道這7件事,讓你成為香檳達(dá)人 每年十月份的第三個(gè)周五,是全世界香檳愛好者們最開心的日子。 無論...
    今晚扁老虎閱讀 638評(píng)論 0 1
  • 有沒有這種感覺,無論你是在工作中,還是在生活中,或者和朋友聊天,或者走在大街上,你都會(huì)一不小心遇見牛人,有時(shí)你會(huì)驚...
    希睿希閱讀 472評(píng)論 3 4
  • “你們?yōu)槭裁捶质???“他問我為什么不能毫無保留地愛他?!?“就因?yàn)檫@句話?” “不是,因?yàn)槲倚奶摿恕!?他是我的...
    耳東大王不吃香菜閱讀 279評(píng)論 0 0
  • 在為期4天的黨務(wù)培訓(xùn)班,主辦方為學(xué)員安排了團(tuán)隊(duì)拓展訓(xùn)練科目。通過參加團(tuán)隊(duì)拓展訓(xùn)練科目,自感深受啟發(fā)。 為指導(dǎo)自己的...
    顏黙閱讀 373評(píng)論 2 6

友情鏈接更多精彩內(nèi)容