[英]How to show modal view from a xib file in MacOS correctly?
操作系統:MacOS 語言:Swift 4+
我想要的是
我想從我的主窗口顯示一個簡單的自定義模式視圖。 我在一個單獨的 .xib 文件中創建了這個自定義模式視圖,該文件屬於 NSWindowController 類。
在 Xcode 中,我添加了一個新文件 --> CocoaClass --> NSWindowController 的子類 --> 選中“也為用戶界面創建 XIB 文件”
我添加了一個按鈕並生成了一個操作處理程序,它只是在調試控制台上打印文本。 這是為了測試按鈕按下是否正確處理。
為了從我的主窗口顯示模態視圖,我在按下按鈕時執行了以下代碼:
let modal = SimpleModal(windowNibName: "SimpleModal")
self.view.window?.beginSheet(modal.window!, completionHandler: { response in
print("Finished device selection")
})
這確實顯示了視圖,但不是作為模態視圖。 它只是在我的主窗口旁邊顯示視圖,當我單擊模態視圖中的按鈕時,模態視圖也不會對鼠標單擊事件做出反應。
我不知道如何做到這一點,所以如果你知道如何做到這一點,請回答我。
筆記:
當模態視圖出現時,主窗口應該沒有響應,直到用戶關閉模態視圖。 這就像將焦點從主窗口移動到模態視圖。
我的演示項目的來源: OSXModalView
您必須在SimpleModal.xib
窗口對象的屬性檢查器中刪除Visible At Launch
標志。 否則你的代碼有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.