在第二个 ViewController 中禁用 closeButton
Posted
技术标签:
【中文标题】在第二个 ViewController 中禁用 closeButton【英文标题】:Disable closeButton in 2nd ViewController 【发布时间】:2017-06-05 11:39:35 【问题描述】:我试图在我的第二个 ViewController“OptionsVC”中禁用 closeButton
这是我尝试过的:
self.view.window!.standardWindowButton(NSWindowButton.closeButton)!.isHidden = true
做到了,得到了这个: EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0
也试过了
var button = view.window?.standardWindowButton(NSWindowButton.ZoomButton)
button?.isEnabled = false
没有变化
【问题讨论】:
我不明白您是否只有一个窗口并且您尝试在两种不同的情况下启用/禁用关闭按钮,或者如果您有两个窗口并且想要一个带有关闭按钮的窗口一个没有它。你能澄清一下吗? 【参考方案1】:为了禁用一个按钮,它应该被初始化。因此,您将面临从另一个视图控制器禁用按钮的问题。尝试添加一个布尔值并在 viewDidLoad() 上检查布尔值并决定启用或禁用该按钮。
【讨论】:
【参考方案2】:我明白了。
override func viewDidAppear()
super.viewDidAppear()
if let window1 = self.view.window
window1.styleMask.remove( [.closable, .resizable] )
这解决了我的问题
【讨论】:
以上是关于在第二个 ViewController 中禁用 closeButton的主要内容,如果未能解决你的问题,请参考以下文章
从一个 ViewController 中获取一个随机数并在第二个 ViewController 中使用它 - 更新
我用Xcode创建了两个view controller,在第二个viewcontroller中添加按钮之后,怎么进行代码关联?
iOS9:UIViewController:当 viewController 在第二个 UIWindow 中运行时,不会在拆分视图更改时调用 viewWillTransitionToSize
目标 C - 如何在触摸第一个 SKnode 时禁用第二个 Sknode 上的触摸