Для приложения, которое я разрабатываю, мне нужно отобразить пользовательскую кнопку "Назад" в панели навигации. У меня есть свойство кнопки в виде PNG-изображения, и я пишу этот код:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];
backButton.frame = CGRectMake(0, 0, 79, 29.0);
[backButton setImage:[UIImage imageNamed:@"button_back.png"] forState:UIControlStateNormal];
self.navigationItem.backBarButtonItem = [[[UIBarButtonItem alloc] initWithCustomView:backButton] autorelease];
}
Когда я нажимаю этот контроллер вида, пользовательская кнопка не появляется, и вместо этого я получаю стандартную кнопку возврата с названием этого контроллера представления внутри.
Вещи, которые я уже пробовал:
- Удвоенная проверка, что кнопка
backButton
создана правильно, добавив ее в иерархию представления. Он отображается правильно. - В том же методе изменилось свойство
title
navigationItem
и подтвердилось, что он изменяет (как и ожидалось) содержимое моей кнопки возврата.
Может ли кто-нибудь определить, что я делаю неправильно? Удалось ли использовать пользовательское изображение в качестве кнопки "Назад" с помощью UINavigationController
?