我有 UIWindow 并且它的 rootViewController 有蓝色背景并允许各种方向改变:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
然后我用新的 rootViewController (SecondViewController) 创建新的 UIWindow:
UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
SecondViewController* secondVC = [[SecondViewController alloc] init];
window.rootViewController = secondVC;
window.windowLevel = UIWindowLevelStatusBar;
[window makeKeyAndVisible];
SecondViewController 只允许纵向:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
对我来说最重要的是要像弹出窗口一样添加 SecondViewController 视图。所以用户可以看到以前的VC的背景。
但是当我旋转设备时,它会向我的 VC 询问 - (BOOL)shouldAutoRotate... 方法,并且我得到了横向模式,并且状态栏出现在横向模式下。
理想情况下,我想知道是否完全拒绝旋转(蓝色,黄色,状态栏不会旋转)。
请帮忙。