Для удобства людей, пришедших сюда чуть позже, стоит отметить, что iOS5 обеспечивает прямую поддержку для этого вида настройки. Чтобы изменить изображение, лежащее в основе UINavigationBar, используйте
- (void)setBackgroundImage:(UIImage *)backgroundImage forBarMetrics:(UIBarMetrics)barMetrics
Там также есть свойство
@property(nonatomic, copy) NSDictionary *titleTextAttributes
для настройки заголовка. И вы можете использовать внешний вид прокси, чтобы эти изменения были распространены в вашем приложении. Больше обсуждения в WWDC 2011, Сессия 114, «Настройка внешнего вида элементов управления UIKit».
До выхода iOS5 то, что вы должны были сделать, заключалось в создании подкласса UINavigationBar.