Где вызвать setBackgroundImage: forBarMetrics: на UINavigationBar в приложении с раскадровкой? - PullRequest
0 голосов
/ 13 октября 2011

У меня есть приложение на основе раскадровки с контроллером навигации в качестве начального контроллера представления.

Я бы хотел установить фон для панели навигации на изображение с помощью метода setBackgroundImage: forBarMetrics:, но я не уверен, где его вызвать.

Я мог бы создать подкласс UINavigationController и использовать метод viewDidLoad для его вызова, но создание подкласса UINavigationController не рекомендуется. Я думаю, что я должен подкласс UINavigationBar и переопределить какой-то метод инициализации?

Спасибо

Steve

1 Ответ

3 голосов
/ 17 октября 2011

Я сам с этим поработал.Я хотел, чтобы все навигационные панели в приложении имели собственный фон, поэтому проще всего сделать это, используя прокси-сервер внешнего вида для панели навигации:

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"title_bar.png"]

Это установит фоновое изображение для всехпанели навигации должны быть "title_bar.png".

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

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

в делегате приложения.

...