Navigation bar style
Hello,
J'essaye depuis quelque jours de comprendre comment personnaliser ma navigation bar.
La méthode traditionnel pour toute l'application fonctionne parfaitement :
UINavigationBar.appearance().barTintColor = self.orangeColor
UINavigationBar.appearance().tintColor = self.whiteColor
UINavigationBar.appearance().titleTextAttributes =
[
NSForegroundColorAttributeName : self.whiteColor
]
En revanche lorsque je souhaite le faire vue par vue, cela se complique. Pour certaines vues je souhaite avoir une navigation bar transparente avec :
let bar:UINavigationBar! = self.navigationController?.navigationBar
bar.setBackgroundImage(UIImage(), forBarMetrics: UIBarMetrics.Default)
bar.shadowImage = UIImage()
bar.backgroundColor = UIColor.clearColor()
ou pour d'autres vue une navigation bar orange :
let bar:UINavigationBar! = self.navigationController?.navigationBar
bar.tintColor = AppearanceManager.orangeColor
bar.barTintColor = AppearanceManager.orangeColor
bar.titleTextAttributes =
[
NSForegroundColorAttributeName : AppearanceManager.whiteColor
]
Le soucis étant que si un style est appliqué à une vue dans une hiérarchie, il est appliqué a toute les autres. Et une re application du style dans viewDidAppear n'y fait rien. Idem pour le titre qui disparait et que je re attribut dans le viewDidAppear, mais qui produit un temps ou il n'y a aucun titre.
Comment vous y prenez vous pour changer le style de votre navigation bar pour UNE vue de votre navigation en particulier ?
Bonne journée
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Il me semble bien que ça marche, pourtant. Essaye aussi dans viewWillAppear, ça paraà®t plus logique.