2016-08-02 95 views
-5

我遇到了一些应用程序问题,并寻找最佳解决方案。我想创建一个在其他NSViewController中具有独立逻辑的弹出窗口。OS X中的弹出窗口应用程序

案例是 - 我点击我的窗口中的按钮,然后出现其他窗口与一些NSTextField和自定义设计。我正在考虑什么组件最适合我的问题。

是这样的:

my view

预先感谢您的帮助!

+0

'NSPanel'或创建另一个窗口?你看过[Window编程指南](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/WinPanel/Introduction.html#//apple_ref/doc/uid/10000031i)吗? – Abizern

+0

通过控制从按钮拖动到视图控制器,您可以将打开窗口的按钮链接到视图控制器? – Eric

回答

1

如果已经用下面的代码完成它:

let addMyPopover = NSPopover() 

if let popOverController = aViewController(xyz: data) { 
      popOverController.closeDelegate = self 
      addMyPopover.behavior = .Transient 
      addMyPopover.contentViewController = popOverController 
      addMyPopover.contentSize = CGSizeMake(450, 380) 
      addMyPopover.showRelativeToRect(addButton.bounds, ofView: addPhaseButton, preferredEdge: NSRectEdge.MinY) 
     } 

extension MyController: closeViewDelegate { 
    func closePopover(sender: AnyObject?) { 
     addMyPopover.performClose(sender) 
    } 
} 

protocol closeViewDelegate: class { 
    func closePopover(sender: AnyObject?) 
} 

aViewController是从类型NSViewController

+0

这不完全是我所需要的(请参阅屏幕截图) –

+0

这就是Apple建议使用的方式:https://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/OSXHIGuidelines/ControlsView.html#// apple_ref/DOC/UID/20000957-CH52-SW1 –

相关问题