Customize UINavigationBar appearance in Swift

In this video tutorial I am showing how to customize UINavigationBar by:

  • changing its background color (barTintColor)
  • set UINavigationBar Title text tint color (NSForegroundColorAttributeName)
  • set UINavigationBar background image
  • change Back button tint color
  • change Bar Button item tint color

Source code:

// Set navigation bar tint / background colour
UINavigationBar.appearance().barTintColor = UIColor.redColor()

// Set Navigation bar Title colour
UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName:UIColor.whiteColor()]

// Set navigation bar ItemButton tint colour
UIBarButtonItem.appearance().tintColor = UIColor.yellowColor()

// Set Navigation bar background image
let navBgImage:UIImage = UIImage(named: “bg_blog_navbar_reduced.jpg”)!
UINavigationBar.appearance().setBackgroundImage(navBgImage, forBarMetrics: .Default)

//Set navigation bar Back button tint colour
UINavigationBar.appearance().tintColor = UIColor.whiteColor()

or you can also access UINavigationBar through the UINavigationController and change UINavigationBar tint color For example:

// Set navigation bar background colour
self.navigationController!.navigationBar.barTintColor = UIColor.yellowColor()

// Set navigation bar title text colour
self.navigationController!.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.blackColor()]

// Set Navigation bar background Image
let navBgImage:UIImage = UIImage(named: “bg_blog_navbar_reduced.jpg”)!
self.navigationController!.navigationBar.setBackgroundImage(navBgImage,
forBarMetrics: .Default)


Learn iOS Development with these Video Courses

The Complete iOS 11 & Swift Developer Course - Build 20 Apps

Use Xcode 9 & Swift 4 to make real apps like Uber and Instagram, with CoreML & ARKit. Includes AWS Credit and much more. Preview this video course. icon

How to Make a Freaking iPhone App - iOS 11 and Swift 4

iPhone App Development from scratch. Learn how to make iOS apps using Xcode 9. The Basics Include Pokemon Go & Snapchat. Learn to build iOS Apps with Xcode 9 and Swift 4. How to Make a Freaking iPhone App - iOS 11 and Swift 4 icon

iOS 11 and Xcode 9 - Complete Swift 4 & Objective-C Course

A Complete iOS 11 and Xcode 9 Course with Swift 4 & Objective-C. Preview this video course. iOS 11 and Xcode 9 - Complete Swift 4 & Objective-C Course icon