gpt4 book ai didi

横向模式下的 iOS 8 状态栏背景方向

转载 作者:行者123 更新时间:2023-11-29 02:31:17 24 4
gpt4 key购买 nike

在 iOS8 中,在 viewController 的 viewDidLoad 方法中,我使用以下代码以编程方式设置主视图:

CGRect appRect = [[UIScreen mainScreen] applicationFrame];
rootView = [[RootView alloc] initWithFrame: appRect];
[self setView: rootView];

该应用程序仅在横向左模式下运行(我从应用程序的 plist 文件控制它)。这是设置后 View 的样子: enter image description here

即使应用程序处于横向模式,状态栏下方的白色栏也会显示为就像应用程序处于纵向模式一样。有什么想法可能导致这种情况吗?

编辑:运行这个:

NSLog(@"%@",NSStringFromCGRect([[UIApplication sharedApplication] statusBarFrame]));

输出:{{0, 0}, {1024, 20}}

编辑:我为 Root View 添加了背景颜色:

rootView.backgroundColor = [UIColor greenColor];

这就是应用程序现在的样子: enter image description here

最佳答案

我的问题是,在我的 appdelegate 中,我的 - (void)applicationDidFinishLaunching:(UIApplication *)application 方法:我没有设置 Root View Controller 。相反,我是这样做的:

viewController = [[BoardViewController alloc] init];
[window makeKeyAndVisible];
[window addSubview: [viewController view]];

一旦我改变了 Root View 框架覆盖了整个窗口并且状态栏背景在它应该的位置:

viewController = [[BoardViewController alloc] init];
[window makeKeyAndVisible];
window.rootViewController = viewController;

我从这个答案中得到了灵感:iOS 8 - Launching the application in Landscape mode

关于横向模式下的 iOS 8 状态栏背景方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26844100/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com