Я настроил панель заголовка навигационного контроллера с фоновым изображением, но я действительно пытаюсь изменить цвет фона кнопки назад на прозрачный, чтобы он соответствовал зеленая строка заголовка под ним. Я довольно новичок в разработке iOS. Может ли кто-нибудь предложить, что можно сделать?ios 5 измените фон кнопки назад на навигационном контроллере на прозрачный
Вот код, я использовал, чтобы изменить строку заголовка навигационного контроллера, только в случае, если это помогает:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
if ([self.navigationController.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]) {
UIImage *image = [UIImage imageNamed:@"greenbar.png"];
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
// [[UIBarButtonItem appearance] setBackButtonBackgroundImage:image forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
}
//change back button image
}
EDIT: После того, как делать немного исследований мне удалось получить то, что я хотел , Вот код, чтобы изменить фоновое изображение для кнопки возврата:
UIImage *image1 = [UIImage imageNamed:@"back-bt.png"];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:image1 forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
Приведенный выше код добавляет изображение для всех задних кнопок в навигации контроллера.
Ваше решение не будет работать, если навигационный контроллер представлен в контроллере popover. Причина этого в том, что фон фона кнопки фона и панели заднего фона в popover рисуется по-разному. –