首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSWindow在showWindow之后自动关闭

NSWindow在showWindow之后自动关闭
EN

Stack Overflow用户
提问于 2016-06-21 19:35:26
回答 1查看 472关注 0票数 0

我正试图在一个故事板中打开一个NSWindow。我正确地实例化了控制器,窗口打开了,但立即消失了。

代码语言:javascript
复制
   var sb : NSStoryboard?
   var vc : NSWindowController?
   @IBAction func openWindow(sender: AnyObject) {
        let sb = NSStoryboard(name: "NewStoryBoard", bundle: nil)
        let vc = sb.instantiateControllerWithIdentifier("windowController")
        vc.showWindow(nil)
   }

如果vars在漏斗里,我会理解这种行为。在这种情况下ARC会毁掉窗户。

在我的样本中,vars在漏斗之外,这将使vars不被ARC杀死。

我的方式怎么了?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-21 20:02:33

实际上,在你的样本中,你有两组不同的变量。let sb = ...let vc = ...创建局部变量(同名),并在函数中使用时覆盖外部变量。您希望删除let限定符,以便它将值赋给函数外部的变量。

如果您移除两个let限定符,展开现在的选项,并强制下拉式,那么您的窗口将保持不动。

注意:如果您不再需要您的故事板,您可以实际删除var sb...并保留let sb...,以便减少一件要打开的东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37953123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档