2012-01-27 90 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全屏移除視圖中的播放列表,然後調整視頻視圖的大小以使其填滿窗口即可。

請確保您在某個地方持有對該視圖的引用,因爲否則該視圖將被重新分配。然後,您可以使用該參考在窗口退出全屏模式時添加視圖。