私のアプリは iOS 6 SDK に対してコンパイルされています (iOS 7 SDK にアップグレードする時間がありませんでした)。Default
そのため、ステータスバーが画像に重なっていることに気付きました。これは、「マルチタスク」ビューでのみ発生するようですが、何らかの理由でアプリをバックグラウンドから再開するときは発生しません。
この画像を参照してください。
私のアプリは iOS 6 SDK に対してコンパイルされています (iOS 7 SDK にアップグレードする時間がありませんでした)。Default
そのため、ステータスバーが画像に重なっていることに気付きました。これは、「マルチタスク」ビューでのみ発生するようですが、何らかの理由でアプリをバックグラウンドから再開するときは発生しません。
この画像を参照してください。
多くの人がこれにまったく気付かないと思います。
ただし、私が知る限り、アプリがバックラウンドになったときにステータスバーを無効にすることができます。これを行うには、デリゲートで次のメソッドを使用します。
- (void)applicationWillResignActive:(UIApplication *)application {
//code to disable statusbar
}
メソッドではapplicationDidBecomeActive
、ステータスバーを再度有効にすることができます。
- (void)applicationDidBecomeActive:(UIApplication *)application {
//code to enable the statusbar
}
さらに、この以前の質問を見ることができます:ステータスバーが消えない
ご不明な点がございましたら、お気軽にお問い合わせください。
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