iOS 5 [внешний вид UINavigationBar] setBackgroundImage не работает - PullRequest
5 голосов
/ 22 октября 2011

Я создал новый тестовый проект iOS5 в Xcode 4.2 Build 4D199 и попытался установить внешний вид UINavigationBar, как описано выше, но ничего не происходит.

Код, который я пробовал в viewDidLoad:

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navbar-iphone.png"] forBarMetrics:UIBarMetricsDefault];

Единственный способ заставить его работать, это настроить внешний вид экземпляра UINavigationBar.Как:

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navbar-iphone.png"] forBarMetrics:UIBarMetricsDefault];

Что происходит?У кого-нибудь еще была эта проблема?

Ответы [ 3 ]

18 голосов
/ 13 декабря 2011

viewDidLoad - неправильное место, чтобы связываться с прокси-сервером appearance навигационной панели контроллера.Сделайте это до того, как будет создан навигационный контроллер.В вашем приложении делегат applicationDidFinishLaunching - это хорошее место.

1 голос
/ 10 ноября 2011

Вам нужно будет предоставить forBarMetrics: чтобы это работало.

1 голос
/ 03 ноября 2011

Вы дважды проверили, существует ли этот Imagefile?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...