我想制作一个全屏应用,除了具有正常的窗口行为外,还显示新空间的背景。基本上,当用户全屏显示时,我希望应用中的每个NSWindow
保持相同的大小,保持在屏幕的相同位置,但移动到新的空间。这可能吗?如果是这样,那种行为的文件在哪里?
customWindowsToEnterFullScreenForWindow
。我用它来解决问题。代码如下,只是其他任何人都有兴趣这样做。
- (NSArray*) customWindowsToEnterFullScreenForWindow:(NSWindow*)window {
if ([window isEqualTo:self.window]) {
return [NSArray arrayWithObjects:window, otherwindow, nil];
}
return nil;
}
- (NSArray*) customWindowsToExitFullScreenForWindow:(NSWindow*)window {
if ([window isEqualTo:self.window]) {
return [NSArray arrayWithObjects:window, otherwindow, nil];
}
return nil;
}
这些是NSWindowDelegate
方法,所以一定要设置窗口的委托。否则,可能会引起一些混乱。
答案 0 :(得分:2)
一个应用程序一次只能在一个空间上。这是一个很难的限制。如果您希望能够在全屏幕上管理多个空间的多个窗口,则应该提交错误。