2017-09-30 4 views
-1

J'ai deux contrôleurs de vue accessibles par les contrôleurs de tabulation et un sous-affichage avec afficher les détails des deux contrôleurs de la vue principale. Le contrôleur de vue premier/intro a un texte barbuttonitem bleu (par défaut). Lorsque vous accédez à la sous-vue immédiatement depuis le contrôleur first/intro, le texte de la barre de commande reste bleu (par défaut). Mais, quand vous allez au deuxième viewcontroller, il a le texte de barbuttonitem noir. Ensuite, lorsque vous revenez au contrôleur de première vue, puis dans la sous-vue, le texte qui était bleu (par défaut) devient maintenant noir.La couleur de la teinte Barbuttonitem ne peut pas être changée sur un seul contrôleur de vue

enter image description here

J'ai essayé de placer la couleur de teinte sans succès dans le viewDidLoad de tous viewcontorllers comme celui-ci:

self.navigationController?.navigationBar.barTintColor = nil 
self.navigationController?.navigationBar.tintColor = nil 

Où puis-je aller d'ici?

+0

Vous êtes sûr de ne pas avoir réglé le bouton droit sur le noir quelque part? – Shades

+0

J'ai passé plus de 2 heures hier à scanner tous les contrôleurs de vue pour quelque chose disant qu'il est noir - ne trouve rien. J'ai aussi regardé à travers le story-board pour voir si ça se passait là-bas, mais pas de chance. Vraiment me gratter la tête ici. – Coltuxumab

Répondre

-1

Compris! C'est un étrange ...

Sur mon contrôleur de vue initial (vue intro ci-dessus), j'ai eu le code suivant au bas de viewDidLoad pour régler la couleur du texte « annuler » pour la barre de recherche:

let cancelButtonAttributes: NSDictionary = [NSForegroundColorAttributeName: UIColor.black] 
UIBarButtonItem.appearance().setTitleTextAttributes(cancelButtonAttributes as? [String : AnyObject], for: UIControlState.normal) 

les facteurs qui rendent cela difficile à déboguer:

  1. ce code a été le seul contrôleur de vue qui semblait fonctionner correctement, plutôt que ceux qui ont été brisées
  2. ce code réglé le bouton annuler de la s barre de recherche, qui semblerait n'avoir rien à voir avec le contrôleur de navigation actuel. En y regardant de plus près, le code ajuste l'apparence de l'UIBarButtonItem.