2010-05-23 3 views
1

J'ai un UITableViewController où j'ai ajouté un « editButtonItem » dans la barre de navigation:Comment définir la couleur de editButtonItem dans la barre de navigation d'un UITableViewController?

self.navigationItem.leftBarButtonItem = self.editButtonItem; 

Pas magique, mais j'essaie de définir la couleur (arrière-plan et de premier plan/textcolor) de ce bouton. Je lis dans le forum Apple quelque part que le bouton change de couleur si je change la barre de navigation de la même couleur, bien que je ne fonctionne pas non plus (pour tester) je ne veux pas toucher la navigationbr elle-même, juste le bouton.

Étant donné que ce bouton est déjà prédéfini, je ne suis pas sûr de savoir comment gérer cela. Ai-je besoin d'écraser le bouton avec ma propre définition ou puis-je appliquer tout simplement un nouveau style (si oui, comment?)

Thx

+0

Le 'editButtonItem' est-il un UIBarButtonItem? Si oui, est-il initialisé avec la méthode 'initWithBarButtonSystemItem:' ou 'initWithTitle:'? – Endemic

+0

en fait le editButtonItem est un UIBarButtonItem prédéfini à partir du UIViewController. – eemceebee

Répondre

2

Si tout échoue, vous pouvez teinter la barre dans la viewDidLoad de votre childViewController

[self.navigationController.navigationBar setTintColor:[UIColor colorWithHue:50 saturation:50 brightness:.2 alpha:.5]]; 
0

La seule façon que je peux trouver pour faire un UIBarButtonItem avec une couleur différente est pour utiliser une vue personnalisée et la méthode initWithCustomView:. Les boutons prédéfinis et ceux créés à l'aide de initWithTitle:target:action: ne peuvent pas changer leur couleur d'arrière-plan.

Jetez un oeil à cette question SO: UIBarButtonItem with color?

Ces liens pourraient aussi aider:
http://www.iphonedevsdk.com/...
http://www.insanelymac.com/...

Questions connexes