xocde4 이하버전 소스에서 xocde5이상 업데이트 시 status bar 겹치는 문제 해결법
-info.plist 에 View controller-based status bar appearance를 NO로 추가
AppDelegate의 didFinishLaunchingWithOptions에 아래 코드 추가 (해당코드는 검은색 배경으로 되어있으니 필요에 따라서 변경하면 됩니다.)
[self.window setBackgroundColor:[UIColor blackColor]];
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque];
ViewController 마다 오버라이딩 함수 추가
- (void)viewWillLayoutSubviews {
if ([[UIDevice currentDevice].systemVersion floatValue] >= 7.0) {
if([[UIApplication sharedApplication] statusBarOrientation] == UIDeviceOrientationPortrait
|| [[UIApplication sharedApplication] statusBarOrientation] == UIDeviceOrientationPortraitUpsideDown) {
self.view.frame = [[UIScreen mainScreen] applicationFrame];
}
else {
CGRect rect = [[UIScreen mainScreen] applicationFrame];
self.view.frame = CGRectMake(0, rect.origin.y + 20, rect.size.height, rect.size.width);
}
}
}
- (UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}
실행하면 예전과 같은 검은 상태바를 볼 수 있습니다.