iOS8设置NavigationBar颜色和BackButtonItem颜色,归档存储以备查阅,把以下代码添加到appdelegate的
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
中。
//1. 设置导航栏的背景图片 UINavigationBar *bar=[UINavigationBar appearance]; //[bar setBackgroundImage:[UIImage imageNamed:@"navigationbar_background.png"] forBarMetrics:UIBarMetricsDefault]; [bar setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"navigationbar_background.png"]]]; bar.barStyle = UIStatusBarStyleDefault; //1.2 设置返回按钮的颜色 在plist中添加 View controller-based status bar appearance=NO切记。 [bar setTintColor:kBackButtonColor]; // //设置返回按钮指示器图片 // UIImage *backImage=[[UIImage imageNamed:@"navigationbar_back"] resizableImageWithCapInsets:UIEdgeInsetsMake(5, 0, 5, 5)]; // [[UINavigationBar appearance] setBackIndicatorImage:backImage]; // [[UINavigationBar appearance] setBackIndicatorTransitionMaskImage:[UIImage imageNamed:@"navigationbar_back_highlighted"]]; // //2. 设置导航栏文字的主题 [bar setTitleTextAttributes:@{ NSForegroundColorAttributeName:[UIColor blackColor], }]; //3. 设置UIBarButtonItem的外观 UIBarButtonItem *barItem=[UIBarButtonItem appearance]; [barItem setBackgroundImage:[UIImage imageNamed:@"navigationbar_button_background.png"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [barItem setBackgroundImage:[UIImage imageNamed:@"navigationbar_button_background_pushed.png"] forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault]; //4. 该item上边的文字样式 NSDictionary *fontDic=@{ NSForegroundColorAttributeName:kBackButtonColor, NSFontAttributeName:[UIFont systemFontOfSize:19.f], //粗体 }; [barItem setTitleTextAttributes:fontDic forState:UIControlStateNormal]; [barItem setTitleTextAttributes:fontDic forState:UIControlStateHighlighted]; // 5.设置状态栏样式 [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;