・iPhone5をiOS7にアップデート
・自分のアプリ動かす
・(前回の)UIAlertViewでUITextFieldが表示されない
・修正、起動しようとしたらXcodeから起動できない、7のSDKがない
・Xcode5にアップデート
・修正したアプリを起動すると、広告が変な位置に。。。
・よく見るとステータスバーが表示されている
・デバッグで見ると画面サイズが20px減っている(568->548px)
・画面をずらす対策でようやくOK
長い。。
起動するまで時間かかった上、ステータスバーは普通のやり方で消せませんでした。
◆Cocos2dの場合
AppDelegate.mmのdidFinishLaunchingWithOptionsに以下を追加
// iOS7でステータスバーが表示され20px狭くなる対応、画面をずらしている if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) { [application setStatusBarStyle:UIStatusBarStyleLightContent]; self.window.clipsToBounds =YES; self.window.frame = CGRectMake(0, 20, self.window.frame.size.width, self.window.frame.size.height-20); self.window.bounds = CGRectMake(0, 20, self.window.frame.size.width, self.window.frame.size.height); }
更にinfo.plistに以下を追加
UIViewControllerBasedStatusBarAppearance値:NO
◆Cocos2dxの場合
RootViewControllerを修正
・RootViewController.h
// iOS7でステータスバーが表示され20px狭くなる対応 - (BOOL) prefersStatusBarHidden; ・RootViewController.mm // iOS7でステータスバーが表示され20px狭くなる対応 - (BOOL)prefersStatusBarHidden { return YES; }
Bugとしてチケットきられていました
http://www.cocos2d-x.org/issues/2800