IOS- Anpassen der Navigationbar mit Swift
Inhaltsverzeichnis
Symptom
Das Anpassen der iOS Navigationbar über das Storyboard ist nicht immer ganz einfach. Ich zeige Ihnen einen Weg, wie Sie diese programmatisch anpassen können.
Ursache und Lösung
• Anpassen des Fonts
• Anpassen der Hintergrundfarbe
• Anpassen des Farbtons der Navigationbar Items, z.B. Back Button
Ändern des Fonts
Die Veränderungen sollten Sie in der ViewDidLoad Methode machen. Die View wurde noch nicht geladen und ist noch nicht sichtbar. Das ist genau der richtige Zeitpunkt, um die Anpassungen vorzunehmen. Die iOS Navigationbar sprechen Sie folgender Maßen an:
self.navigationController?.navigationBar.titleTextAttributes
titleTextAttributes erwartet ein Array mit Font Attributen, z.B. [ NSFontAttributeName: UIFont(name: „Zapfino“, size: 16.0)!]
Der komplette Code sieht so aus:
self.navigationController?.navigationBar.titleTextAttributes = [ NSFontAttributeName: UIFont(name: „Zapfino“, size: 16.0)!]
Der Font sollte nun in Zapfino angezeigt werden.
Ändern der Hintergrundfarbe
Die Hintergrundfarbe sprechen Sie so an:
self.navigationController?.navigationBar.barTintColor
Wie barTintColor schon vermuten lässt, wird hier ein UIColor Objekt erwartet, z.B. UIColor.orangeColor(). Der vollständige Code sieht so aus: Den Farbton sprechen Sie so an:
self.navigationController?.navigationBar.tintColor
Wie barTintColor, benötigt auch tintColor ein UIColor Objekt, wie z.B. UICo-lor.whiteColor(). Der vollständige Code sieht so aus:
self.navigationController?.navigationBar.barTintColor = UIColor.orangeColor()
Ihre Navigationbar sollte nun Orange eingefärbt worden sein.
Ändern des Farbtons
Den Farbton sprechen Sie so an:
self.navigationController?.navigationBar.tintColor
Wie barTintColor so benötigt auch tintColor ein UIColor Objekt, wie z.B. UICo-lor.whiteColor(). Der vollständige Code sieht so aus:
self.navigationController?.navigationBar.tintColor = UIColor.whiteColor()
Ihre Navigationbar Items sollten nun eingefärbt sein.
Hier noch einmal der ganze Code in XCode:
Weitere Informationen
https://www.max-it.de/softwareloesungen/
Links und Quellen
Kontakt
Wenn Sie Fragen oder Anmerkungen zu diesem Artikel haben, melden Sie sich bitte bei uns: mailto:techcorner@max-it.de.
Über m.a.x. Informationstechnologie AG:
Als etabliertes Münchner Systemhaus zeichnen wir uns seit 1989 als verlässlicher IT-Partner mittelständischer und großer Unternehmen aus. Unser Portfolio reicht von IT- Services über individuelle Softwareentwicklung bis hin zur ERP-Beratung.
Tags
iOS, swift, navigationbar, xcode