У меня есть UITableViewController, где я добавил "editButtonItem" в панели навигации:
self.navigationItem.leftBarButtonItem = self.editButtonItem;
Никакое волшебство здесь, но я пытаюсь определить цвет (фон и передний план/цвет текста) этой кнопки.
Я читал на форуме Apple где-нибудь, что кнопка изменяет цвет, если я изменяю navigationbar на тот же цвет, хорошо несмотря на то, что я не заставляю это работать любой (для тестирования), я не хочу касаться самого navigationbr, просто кнопка.
Так как эта кнопка уже предопределена, я не уверен, как обработать это. Я должен перезаписать кнопку со своим собственным определением, или я могу просто применить новый стиль (раз так, как?)
Спасибо
Если все не получается, вы можете подкрасить полосу в viewDidLoad вашего childViewController
[self.navigationController.navigationBar setTintColor:[UIColor colorWithHue:50 saturation:50 brightness:.2 alpha:.5]];
Единственный способ создать UIBarButtonItem другого цвета - это использовать настраиваемое представление и метод initWithCustomView:
. Предопределенные кнопки и кнопки, созданные с помощью initWithTitle: target: action:
, не могут изменить цвет своего фона.
Взгляните на этот вопрос SO: UIBarButtonItem с цветом?
Эти ссылки также могут помочь:
http: //www.iphonedevsdk.com / ...
http: // www.insanelymac.com / ...