diff --git a/Chameleon.iOS/CustomRenderers/PageRenderer.cs b/Chameleon.iOS/CustomRenderers/PageRenderer.cs index 620ae7a7..6a36ecc8 100644 --- a/Chameleon.iOS/CustomRenderers/PageRenderer.cs +++ b/Chameleon.iOS/CustomRenderers/PageRenderer.cs @@ -32,9 +32,8 @@ protected override void OnElementChanged(VisualElementChangedEventArgs e) public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection) { base.TraitCollectionDidChange(previousTraitCollection); - Console.WriteLine($"TraitCollectionDidChange: {TraitCollection.UserInterfaceStyle} != {previousTraitCollection.UserInterfaceStyle}"); - if (this.TraitCollection.UserInterfaceStyle != previousTraitCollection.UserInterfaceStyle) + if (TraitCollection?.UserInterfaceStyle != previousTraitCollection?.UserInterfaceStyle) { SetAppTheme(); } @@ -42,13 +41,17 @@ public override void TraitCollectionDidChange(UITraitCollection previousTraitCol private void SetAppTheme() { - if (this.TraitCollection.UserInterfaceStyle == UIUserInterfaceStyle.Dark) + Mvx.IoCProvider.TryResolve(out var themeService); + if (themeService != null) { - Mvx.IoCProvider.Resolve().UpdateTheme(Core.Models.ThemeMode.Dark); - } - else - { - Mvx.IoCProvider.Resolve().UpdateTheme(Core.Models.ThemeMode.Light); + if (TraitCollection.UserInterfaceStyle == UIUserInterfaceStyle.Dark) + { + themeService.UpdateTheme(Core.Models.ThemeMode.Dark); + } + else + { + themeService.UpdateTheme(Core.Models.ThemeMode.Light); + } } } }