2017-03-24 3 views
1

1 - Irgendeine Idee, wenn wir zwischen Light wechseln können & Dunkle Themen mit den Xamarin.Forms Themen in Version 2.3.x eingeführt (Link unten). Irgendeine Problemumgehung? https://developer.xamarin.com/guides/xamarin-forms/user-interface/themes/Xamarin.Forms - Wechseln zwischen Dark & ​​Light-Themen zur Laufzeit

2 - Auch ich sehe diese Version ist in der Vorschau, seit es eingeführt wurde. Gibt es irgendwelche Probleme und wir können es nicht in der Produktion verwenden?

+0

Kann mir jemand bei meinen Fragen helfen? –

Antwort

2

Ja ist möglich, Hinzufügen der Ressourcen nach Code in der App.cs-Klasse, die Sie wechseln können, welches Thema zu verwenden.

Im Klassenkonstruktor Sie die Standard-Theme eingestellt:

Resources = new Xamarin.Forms.Themes.DarkThemeResources(); 

Sie dann ein Verfahren aussetzen ist diese Klasse SwitchTheme(), wo Sie die anderen Thema vergeben wird: Wenn Sie

public void SwitchTheme() 
{ 
    if (Resources?.GetType() == typeof (DarkThemeResources)) 
    { 
     Resources = new LightThemeResources(); 
     return; 
    } 
    Resources = new DarkThemeResources(); 
} 

Beachten Sie, dass Wenn Sie Stile definiert haben, funktioniert der obige Code nicht, da er Ihr Ressourcenwörterbuch außer Kraft setzt. Dazu könnten Sie basierend auf diesen beiden Ihre eigenen Designs erstellen, Ihre definierenden Stile hinzufügen und Ihre Implementierungen für das Wechseln verwenden.

+0

Es funktioniert. Vielen Dank! Es scheint jedoch nicht das Thema von Registerkarten zu ändern. Weißt du, ob ich etwas verpasse? –

Verwandte Themen