Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c OSX Lion:全屏和窗口模式下的不同视图_Objective C_Macos_Cocoa_Fullscreen - Fatal编程技术网

Objective c OSX Lion:全屏和窗口模式下的不同视图

Objective c OSX Lion:全屏和窗口模式下的不同视图,objective-c,macos,cocoa,fullscreen,Objective C,Macos,Cocoa,Fullscreen,我正试图使窗口中包含的某个视图在切换全屏模式时成为主内容视图,并在用户离开全屏模式时返回到仅获取窗口的一部分 我得出以下结论: - (void)windowWillEnterFullScreen:(NSNotification *)notification { NSLog(@"entering fullscreen"); oldView = [[[NSApplication sharedApplication] mainWindow] contentView]; [old

我正试图使窗口中包含的某个视图在切换全屏模式时成为主内容视图,并在用户离开全屏模式时返回到仅获取窗口的一部分

我得出以下结论:

- (void)windowWillEnterFullScreen:(NSNotification *)notification
{
    NSLog(@"entering fullscreen");
    oldView = [[[NSApplication sharedApplication] mainWindow] contentView];
    [oldView retain];
    [[[NSApplication sharedApplication] mainWindow] setContentView:myViewOfInterest];
}

-(void)windowWillExitFullScreen:(NSNotification *)notification
{
    [[[NSApplication sharedApplication] mainWindow] setContentView:oldView];
}
然而,这只适用于第一位:窗口最大化,感兴趣的视图成为唯一的视图,但当全屏模式离开时,在全屏模式下唯一可见的视图不再在窗口中

我对Objective-C和Cocoa非常陌生,所以谁能告诉我我做错了什么


提前谢谢

一个视图一次只能是另一个视图的子视图。您的
myViewOfInterest
将作为
oldView
的子视图(视图层次结构)删除,并将其设置为窗口的contentView。以后恢复
oldView
时,需要将
myViewOfInterest
添加回原处(以及大小等)。

一个视图一次只能是另一个视图的子视图。您的
myViewOfInterest
将作为
oldView
的子视图(视图层次结构)删除,并将其设置为窗口的contentView。以后恢复
oldView
时,需要将
myViewOfInterest
添加回原处(以及大小等)