2017-05-29 7 views
3

Ich kann die Textfarbe der Statusleiste meiner Xamarin Forms iOS-App nicht in Weiß ändern. Ich habe Veränderung in meinem info.plist wie folgt:Xamarin Forms iOS-Statusleiste Textfarbe

<key>UIStatusBarStyle</key> 
<string>UIStatusBarStyleLightContent</string> 
<key>UIViewControllerBasedStatusBarAppearance</key> 
<false/> 

Doch die Farbe noch schwarz bleiben .. Gibt es eine andere Möglichkeit, die Statusleiste Textfarbe zu ändern?

Antwort

3

In Xamarin.Forms gibt es drei Dinge, die Sie tun müssen, um weißen Text in der iOS-Statusleiste zu erreichen. Ich habe auch eine Beispiel-Xamarin.Forms App darunter geschrieben, die weißen Text in der iOS-Statusleiste verwendet.

1. Aktualisieren Sie die Info.plist

In Info.plist, fügen Sie die Boolesche Eigenschaft View controller-based status bar appearance und seinen Wert auf No

enter image description here

2. Verwenden Sie einen NavigationPage & Stellen Sie die Navigationsleiste Textfarbe zu Weiß

In der Application Klasse (in der Regel App.cs), die MainPage muss ein NavigationPage sein, und die BarTextColor muss Color.White enter image description here

3. Reinigen & die App neu erstellen

Manchmal gesetzt werden der Compiler nicht die Statusleiste Farbe nicht aktualisiert, bis Sie reinigen und neu erstellen Sie die App, Nachdem Sie die Änderungen in den Schritten 1 & 2 durchgeführt haben, reinigen Sie die App und erstellen Sie sie neu. enter image description here

Beispiel App

https://github.com/brminnick/SaveImageToDatabaseSampleApp/blob/master/README.md

+0

Vielen Dank für Ihre Antwort! Aber jetzt habe ich keine Statusleiste mehr:/ – Huby03

+0

Oh nein! Stört es dich das als neue Frage zu StackOverflow zu stellen und mir den Link zu schicken? Ich kann einige Screenshots posten, um Ihnen zu helfen, dieses Problem auch zu beheben –

+0

Hey, hier gehts: https://stackoverflow.com/questions/44321309/xamarin-ios-status-bar-text-color Vielen Dank – Huby03

1

Die einzige Möglichkeit, Statusleiste in IOS für mich zu ändern war, diesen Code in FinishedLaunching in AppDelegate verwenden

public override bool FinishedLaunching(UIApplication app, NSDictionary options) 
    { 
     global::Xamarin.Forms.Forms.Init(); 

     LoadApplication (.....); 
     app.SetStatusBarStyle(UIStatusBarStyle.LightContent, true); 

     return base.FinishedLaunching (app, options); 
    } 
+0

Es funktioniert nicht – Singapore