我不知道为什么这段代码不起作用,但希望修复很简单,我希望有人能提供帮助。
我有 2 个函数,enterFullScreen 和 exitFullScreen。
在enterFullScreen方法中,我给Window的frame设置了一个NSView的frame,有全屏的效果,这就是我想要的。在此方法中,我存储旧帧,以便在 exitFullScreen 方法中可以将它们重新设置,但这不起作用。它没有任何效果。代码如下:
NSView oldView, oldViewContainer;
- (void) enterFullScreen:(NSView*)newView
{
// Store original views
oldView = newView;
oldViewContainer = _newViewContainer;
// Set new views to fit window
[_newViewContainer setFrame:[_window.contentView frame]];
[newView setFrame:[_window.contentView frame]];
}
- (void) exitFullScreen:(NSView*)newView
{
// Restore old views
[_newViewContainer setFrame:[oldViewContainer frame]];
[newView setFrame:[oldView frame]];
}
输入全屏方法完全按预期工作,但由于某种原因,我无法将 2 个视图设置回其原始大小/位置。
我不知道是因为我不能只存储整个视图,还是原点导致问题?
我已经尝试了所有组合,如果有人可以提供帮助,我将非常感激。
提前致谢。