A: 

This is quite annoying. You will need to manipulate the custom views of navigationBar.titleView, and the barbuttonitem.customView. There you can use a UILabel with text of the desired background color. I don't think there is a more elegant solution.

notnoop
that doesn't work for the back button. You can't have a custom view on top of that arrow.
erotsppa
You can mock one in photoshop and use it as a subview. Personally I think you are better off not having tintColor be very light.
notnoop