2017-12-29 19 views
0
私が働いているアプリケーションで長々の説明 -

のObjective-C:ステータスバーの色とナビゲーション色が同じでも、私はiOSの11で

のため申し訳ありません

を同じ色に設定されていない、それは2歳。私たちはiOS 11をサポートしたいと考えていました。特定のビューコントローラでは、画面を180°回転させる必要がありました。このため 私たちは実際にウィンドウを変換このところで

[[[UIApplication sharedApplication] delegate] window].transform = CGAffineTransformMakeRotation(M_PI); 

をused-。

iOS11.0より前にうまくいきました。 iOS 11では、再び元のビューに変換すると、ステータスバーに問題があります。

だから、私はナビゲーションバーの色だけでなく、ステータスバー、ブルーのナビゲーションバーの

#import "UINavigationController+Utilities.h" 

@implementation UINavigationController (Utilities) 

UIView *view; 

-(void)setStatusBackground:(UIColor *)color 
{ 
    if(SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"11.0")) 
    { 

     if (view == nil) { 

      view = [[UIView alloc] initWithFrame: CGRectMake(0, 0, DEVICE_SCREEN_WIDTH, 20)] ; 
      view.backgroundColor = color; 
      [self.view addSubview:view]; 
     } 

     view.backgroundColor = color; 

    } 
} 

@end 

変更背景色を変更していますこの問題を解決します。

[self.navigationController.navigationBar setBarTintColor:HCCOLOR_BLUE]; [self.navigationController setStatusBackground:HCCOLOR_BLUE];

でも色は同じではありません。それは少し違って見えます。

私はイメージ - Screen shot of navigation bar

答えて

0

を追加することですので、あなたのナビゲーションバーが半透明である 試してみてください可能性がありますこれは可能性がありself.navigationController.navigationBar.translucent = NO;

関連する問題