我的应用程序是针对 iOS 6 SDK 编译的(还没有时间升级到 iOS 7 SDK)。所以我只是注意到Default
图像与状态栏重叠。这似乎只发生在“多任务”视图中,但由于某种原因从后台恢复我的应用程序时不会发生。
看这张图片:
我的应用程序是针对 iOS 6 SDK 编译的(还没有时间升级到 iOS 7 SDK)。所以我只是注意到Default
图像与状态栏重叠。这似乎只发生在“多任务”视图中,但由于某种原因从后台恢复我的应用程序时不会发生。
看这张图片:
edgeForExtendedLayout 为 iOS 7 提供了技巧。但是,如果您跨 iOS 7 SDK 构建应用程序并将其部署到 iOS 6 中,导航栏将显示为半透明,并且视图位于其下方。因此,要为 iOS 7 和 iOS 6 修复它,请执行以下操作:
self.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque;
if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
self.edgesForExtendedLayout = UIRectEdgeNone; // iOS 7
我想很多人根本不会注意到这一点。
但是,据我所知,当应用程序进入后台时,您可能会禁用状态栏。为此,只需在委托中使用此方法:
- (void)applicationWillResignActive:(UIApplication *)application {
//code to disable statusbar
}
在该applicationDidBecomeActive
方法中,您可以再次启用状态栏。
- (void)applicationDidBecomeActive:(UIApplication *)application {
//code to enable the statusbar
}
此外,您可以看看这个先前提出的问题:状态栏不会消失
如果您有任何问题,请随时提出!