/// <summary> /// Called when the user changes dark/light mode while the app is running /// </summary> /// <param name="previousTraitCollection"></param> public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection) { base.TraitCollectionDidChange(previousTraitCollection); if (TraitCollection.UserInterfaceStyle != previousTraitCollection.UserInterfaceStyle) { Console.WriteLine($"TraitCollectionDidChange: {TraitCollection.UserInterfaceStyle} != {previousTraitCollection.UserInterfaceStyle}"); ThemeService.ApplyTheme(CurrentTheme()); } }
protected override void OnElementChanged(VisualElementChangedEventArgs e) { base.OnElementChanged(e); if (e.OldElement != null || Element == null) { return; } try { ThemeService.ApplyTheme(CurrentTheme()); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine($"\t\t\tERROR: {ex.Message}"); } }
protected override void OnCreate(Bundle savedInstanceState) { TabLayoutResource = Resource.Layout.Tabbar; ToolbarResource = Resource.Layout.Toolbar; base.OnCreate(savedInstanceState); ImageCircle.Forms.Plugin.Droid.ImageCircleRenderer.Init(); Xamarin.Essentials.Platform.Init(this, savedInstanceState); global::Xamarin.Forms.Forms.Init(this, savedInstanceState); global::Xamarin.Forms.FormsMaterial.Init(this, savedInstanceState); LoadApplication(new App()); ThemeService.ApplyTheme(GetOSTheme(Resources.Configuration)); }
private void ChangeTheme(Swatch swatch) { ThemeService.ApplyTheme(swatch); UserConfigurationManager.Instance.SetConfiguration(new ThemeConfig(swatch)); }
public override void OnConfigurationChanged(Configuration newConfig) { base.OnConfigurationChanged(newConfig); ThemeService.ApplyTheme(GetOSTheme(newConfig)); }