2012-01-27 86 views
1

我目前有一个NSWindow,允许全屏显示。该窗口下面有一个视频播放器和一个播放列表。当用户进入全屏时,我想摆脱播放列表并只显示视频。OS X Lion:全屏NSWindow诱饵&开关

我这样做的第一个想法是在检测到全屏幕入口点时换掉窗口。我发现,我可以用下面的检测此:

- (void)windowWillEnterFullScreen:(NSNotification *)notification 
{ 
    NSLog(@"My window is going fullscreen"); 
} 

但我一直无法弄清楚如何换出窗口在这一点上一个新的。我还没有尝试的一个选择是修改视频的所有调整大小标记并隐藏其他组件,但我不确定这是否是最佳解决方案。

有没有人有任何建议,以更好的方式做到这一点?

+0

查看类似的问题的一种方法:http://stackoverflow.com/questions/9019178/osx-lion-different-views-in-fullscreen-and-in-windowed-mode – CRD 2012-01-27 18:07:45

回答

2

为什么你想换窗口?只需操纵窗口中的视图。

只需从-removeFromSuperview全屏移除视图中的播放列表,然后调整视频视图的大小以使其填满窗口即可。

请确保您在某个地方持有对该视图的引用,因为否则该视图将被重新分配。然后,您可以使用该参考在窗口退出全屏模式时添加视图。