如何更改默认导航项颜色

How to change Default navigation item color

我有一个导航栏,我想将其左侧项目的默认颜色更改为白色。

我想让蓝色变成白色

我想以编程方式完成此操作。 目前我正在使用此代码更改导航栏的颜色和标题

- (void)viewWillAppear:(BOOL)animated
 {
  [self.navigationController setNavigationBarHidden:NO];
self.navigationItem.title = @"Advanced Settings";
UIColor *bg = [UIColor colorWithRed:79/255.0f green:166/255.0f blue:196/255.0f alpha:1.0f];

if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) {
    // iOS 6.1 or earlier
    self.navigationController.navigationBar.tintColor = bg;
   self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor whiteColor]};

} else {
    // iOS 7.0 or later
    self.navigationController.navigationBar.barTintColor = bg;
    self.navigationController.navigationBar.translucent = NO;
    self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor whiteColor]};
}
 }

在 AppDelegate.m 中使用此代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // set Navigation button color
    [[UINavigationBar appearance] setTintColor:[UIColor whiteColor]];
}

希望以下代码对您有所帮助

- (void) viewWillAppear:(BOOL)animated{
    self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
}

您可以添加以下代码行

self.navigationController.navigationBar.barTintColor = bg;//you are setting for entire navigation bar
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];//setting the buttons tint color

希望对您有所帮助...!

将此添加到您的 AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
   [[UIBarButtonItem appearanceWhenContainedIn:[UINavigationBar class], nil] setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]} forState:UIControlStateNormal];
}