我試圖在窗口打開時給mac用戶顯示一個NSPopover,以便給用戶一條指令,但popover不會顯示。在窗口中打開NSPopoverDidLoad
如果我從一個按鈕調用完全相同的功能,然後popover成功顯示,但是當我在windowDidLoad中調用它時,它不會。
我可以看到,我介紹它的控件有一個界限,所以我不認爲這是問題。我也檢查過popover的行爲不是短暫的,所以不應該在沒有干預的情況下關閉。
在我的功能我傳遞一些變量到自定義初始化器,但它基本上是這樣的:
CustomViewController *instruction = [[CustomViewController alloc] init];
[instruction.popover showRelativeToRect:[aField bounds] ofView:aField preferredEdge:NSMaxXEdge];
init方法簡單地調用下面,和自定義視圖和控制器中掛接NIB。
[super initWithNibName:@"InstructionalView" bundle:nil]
有沒有人來過這個?
你能顯示實際設置「'.popover'」屬性的代碼嗎? –
它是CustomViewController上的一個屬性,關係在NIB中設置。 '@property(assign)IBOutlet NSPopover * popover;'。 我的CustomViewController是NIB的文件所有者類,並且是popover的contentViewController。 – DownUnder