我使用以下代码来更改窗口的大小和内容。
- (BOOL)windowShouldZoom:(NSWindow *)window toFrame:(NSRect)newFrame{
[self switchToOtherSize];
return NO;
}
现在,绿色按钮使应用程序全屏显示,并且此代码不再起作用,因为绿色按钮默认情况下不再“缩放”。
我找不到类似的委托(delegate)来捕获绿色按钮上的点击操作并“返回 NO”。
有办法做到这一点吗?
我尝试了以下方法,它有效,但抛出了一个丑陋的异常,表明该方法应该返回一个包含“全屏”的值。
-(NSApplicationPresentationOptions)window:(NSWindow *)window willUseFullScreenPresentationOptions:(NSApplicationPresentationOptions)proposedOptions{
[self switchToOtherSize];
return NSApplicationPresentationDefault;
}
最佳答案
对我来说,这会起作用(10.10 和 10.11):
[self.window setCollectionBehavior: NSWindowCollectionBehaviorFullScreenAuxiliary];
关于macos - 如何在 OSX 10.7+ 上捕捉并禁止 "fullscreen"(绿色)按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31773481/