In my application, I wanted each ViewController to have a unique TabBarItem color when it was presented.

In iOS 8, manually adding the tintColor attribute to the storyboard worked fine, but it no longer has any effect in iOS 9 / Xcode 8.
I solved the problem by including the following code in each of my ViewControllers of my TabBarController type, overriding each of my ViewDidAppear () functions.
override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) self.tabBarController?.tabBar.tintColor = UIColor.whateverColor
Is it safe in any ViewController because of? after calling tabBarController. If the ViewController is not embedded in the TabBarController, the entire row is simply ignored.
By putting this code in each of your VCs, you can easily specify the color of each TabBarItem element.
Scott MacFarlane
source share