IOS- Anpassen der Navigationbar mit Swift: Unterschied zwischen den Versionen

(Die Seite wurde neu angelegt: „=== '''Symptom''' === Das Anpassen der iOS Navigationbar über das Storyboard ist nicht immer ganz einfach. Ich zeige Ihnen einen Weg, wie Sie diese programma…“)
 
Zeile 9: Zeile 9:
  
 
'''Ändern des Fonts'''<br />
 
'''Ändern des Fonts'''<br />
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:<br />
+
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:<br />
 
<pre>self.navigationController?.navigationBar.titleTextAttributes</pre>
 
<pre>self.navigationController?.navigationBar.titleTextAttributes</pre>
 
titleTextAttributes erwartet ein Array mit Font Attributen, z.B. '''[ NSFontAttributeName: UIFont(name: „Zapfino“, size: 16.0)!]'''<br />
 
titleTextAttributes erwartet ein Array mit Font Attributen, z.B. '''[ NSFontAttributeName: UIFont(name: „Zapfino“, size: 16.0)!]'''<br />
Zeile 24: Zeile 24:
 
Wie barTintColor, benötigt auch tintColor ein UIColor Objekt, wie z.B. UICo-lor.whiteColor(). Der vollständige Code sieht so aus:
 
Wie barTintColor, benötigt auch tintColor ein UIColor Objekt, wie z.B. UICo-lor.whiteColor(). Der vollständige Code sieht so aus:
 
<pre>self.navigationController?.navigationBar.barTintColor = UIColor.orangeColor()</pre>
 
<pre>self.navigationController?.navigationBar.barTintColor = UIColor.orangeColor()</pre>
Ihre NavigationBar sollte nun Orange eingefärbt worden sein.<br /><br />
+
Ihre Navigationbar sollte nun Orange eingefärbt worden sein.<br /><br />
 
'''Ändern des Farbtons'''<br />
 
'''Ändern des Farbtons'''<br />
 
Den Farbton sprechen Sie so an:<br />
 
Den Farbton sprechen Sie so an:<br />
Zeile 30: Zeile 30:
 
Wie barTintColor so benötigt auch tintColor ein UIColor Objekt, wie z.B. UICo-lor.whiteColor(). Der vollständige Code sieht so aus:<br />
 
Wie barTintColor so benötigt auch tintColor ein UIColor Objekt, wie z.B. UICo-lor.whiteColor(). Der vollständige Code sieht so aus:<br />
 
<pre>self.navigationController?.navigationBar.tintColor = UIColor.whiteColor()</pre>
 
<pre>self.navigationController?.navigationBar.tintColor = UIColor.whiteColor()</pre>
Ihre NavigationBar Items sollten nun eingefärbt sein.<br />
+
Ihre Navigationbar Items sollten nun eingefärbt sein.<br />
 
<br />
 
<br />
 
Hier noch einmal der ganze Code in XCode:
 
Hier noch einmal der ganze Code in XCode:
Zeile 36: Zeile 36:
  
 
=== '''Weitere Informationen''' ===
 
=== '''Weitere Informationen''' ===
https://mittelstand.max-it.de/Server-Infrastruktur/Server-Virtualisierung<br />
+
https://mittelstand.max-it.de/Software-Loesungen/App-Entwicklung<br />
 +
https://developer.apple.com/library/safari/documentation/UserExperience/Conceptual/MobileHIG/Bars.html<br />
 
=== '''Links und Quellen''' ===
 
=== '''Links und Quellen''' ===
http://support2.microsoft.com/kb/2734782 <br />
+
https://developer.apple.com/library/safari/documentation/UserExperience/Conceptual/MobileHIG/Bars.html <br />
 
=== '''Kontakt''' ===
 
=== '''Kontakt''' ===
 
Wenn Sie Fragen oder Anmerkungen zu diesem Artikel haben, melden Sie sich bitte bei uns: mailto:techcorner@max-it.de.<br />
 
Wenn Sie Fragen oder Anmerkungen zu diesem Artikel haben, melden Sie sich bitte bei uns: mailto:techcorner@max-it.de.<br />
Zeile 44: Zeile 45:
 
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.<br />
 
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.<br />
 
=== '''Tags''' ===
 
=== '''Tags''' ===
iOS, swift , navigationbar ,xcode
+
iOS, swift, navigationbar, xcode
  
 
[[Kategorie: Softwareentwicklung]]
 
[[Kategorie: Softwareentwicklung]]

Version vom 5. Februar 2016, 08:54 Uhr

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

IOS_NavigationBar.png


Ä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:

Vollständiger_Code_in_Xcode.png


Weitere Informationen

https://mittelstand.max-it.de/Software-Loesungen/App-Entwicklung
https://developer.apple.com/library/safari/documentation/UserExperience/Conceptual/MobileHIG/Bars.html

Links und Quellen

https://developer.apple.com/library/safari/documentation/UserExperience/Conceptual/MobileHIG/Bars.html

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