2017-10-22 93 views
5

Gezinme çubuğumu biraz renkle boyadığım Gezinme Denetleyicim var ve durum çubuğunu (taşıyıcıyı, wifi sembolünü vb. aynı renk.Durum çubuğu Gezinme Çubuğuyla aynı renkte değil

Info.plist'da View controller-based status bar appearance equal değerini NO olarak ayarladık. Ve Target > Deployment Info I Status Bar Style > Light ayarlayın: Metin beyaz/açık olduğu gibi durum çubuğu artık gerçekten de "ışık" tarzı kullandığını görebilirsiniz

enter image description here

. Ancak durum çubuğu arka planı, aşağıda görüldüğü gibi Gezinti çubuğuyla aynı değildir. Bunu nasıl düzeltebilirim?

enter image description here

cevap

6

Böyle kullanmak zorunda:

if let statusBar: UIView = UIApplication.shared.value(forKey: "statusBar") as? UIView { 
    statusBar.backgroundColor = UIColor.purple 
} 

, tüm uygulama üzerinde durum çubuğu rengini değiştirmek appdelegate->didFinishLaunchingWithOptions kullanmak istiyorsanız

. Veya belirli bir ekran için değiştirmek isterseniz, o zaman bunu viewDidLoad numaralı telefondan arayın.

+1

Çalışıyor, ancak bunun en uygun çözüm olup olmadığından emin değilim. Durum çubuğu stilini "light" olarak değiştirdiğimde, otomatik olarak Navigation Bar'ın rengini almalı, doğru mu? – rgamber

+0

@rgamber, daha uygun bir çözüm buldunuz mu? – sbru

+1

Ne yazık ki hayır. Başka hiçbir şey çalışmıyor gibi görünüyor, bu yüzden geçici olarak buna başvurdu. Başka bir yol bulursanız, lütfen buraya gönderin! – rgamber