2016-04-09 32 views
0

ich diesen Code unten verwendet, um meine Navigation-Controller Opazität zu machen:Ändern Statusleiste Farbe

navigationController?.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: UIBarMetrics.Default) 
navigationController?.navigationBar.shadowImage = UIImage() 
navigationController?.navigationBar.backgroundColor = UIColor(red:121.0/255.0 , green:168.0/255.0 , blue: 243.0/255.0, alpha: 0.3) 
navigationController?.navigationBar.translucent = true 

das Problem mit diesem Code, wenn ich diesen Code verwenden, meine Statusleiste nicht die gleiche Opazität hat als meine Navigationsleiste, warum? Und wie kann ich das lösen?

Antwort

1

Klicken Sie in Ihrem Storyboard auf Ihren Navigationscontroller und vergewissern Sie sich, dass die obere Leiste auf Opak Navigationsleiste und die Statusleiste auf Standard eingestellt ist. Entfernen Sie alle Codezeilen, die Sie erstellt haben, und führen Sie diese einfache Zeile aus.

self.navigationController!.navigationBar.barTintColor = UIColor(red: 114/255, green: 176/255, blue: 29/255, alpha: 1.0) 

Dies wird Ihr Problem lösen. All diese zusätzlichen Zeilen, die Sie haben, sind nicht notwendig für das, was Sie erreichen wollen.

+0

Ich versuche, aber keine Änderungen ... – Lacrifilm

+0

Ohne ein Bild zu veröffentlichen meine Navigationsleiste nicht transparent, und wenn es nicht transparent, kann ich mein Hintergrundbild nicht sehen. – Lacrifilm

0

Versuchen Sie etwas wie das.

func setWhiteStatusBarColor() { 
    self.navigationController?.navigationBar.barStyle = UIBarStyle.Black 
    self.setNeedsStatusBarAppearanceUpdate() 
} 

func setBlackStatusBlackColor() { 
    self.navigationController?.navigationBar.barStyle = UIBarStyle.Default 
    self.setNeedsStatusBarAppearanceUpdate() 
} 

Sie können diese Funktionen in Ihrer UIViewController-Klasse aufrufen.

Hoffe, dass es Sie

func positionForBar(bar: UIBarPositioning) -> UIBarPosition { 
    return UIBarPosition.TopAttached 
} 

Dies legt die Navigationsleiste auf der Statusleiste und die Statusleiste erbt die Opazität Eigenschaften der Navigationsleiste

0

Fügen Sie diese Funktion, um Ihre View-Controller unterstützen.

Verwandte Themen