Skip to content
This repository has been archived by the owner on May 1, 2024. It is now read-only.

[iOS] Redirect PreferredStatusBarStyle to the Child View Controller #1175

Merged
merged 1 commit into from Dec 22, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
23 changes: 23 additions & 0 deletions Xamarin.Forms.Platform.iOS/PlatformRenderer.cs
@@ -1,5 +1,6 @@
using System;
using System.Diagnostics;
using System.Linq;
using UIKit;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;

Expand Down Expand Up @@ -95,6 +96,17 @@ protected override void Dispose(bool disposing)
_modal = null;
base.Dispose(disposing);
}

public override void ViewDidLoad()
{
base.ViewDidLoad();
SetNeedsStatusBarAppearanceUpdate();
}

public override UIViewController ChildViewControllerForStatusBarStyle()
{
return ChildViewControllers?.LastOrDefault();
}
}

internal class PlatformRenderer : UIViewController
Expand Down Expand Up @@ -129,6 +141,11 @@ public override UIViewController ChildViewControllerForStatusBarHidden()
return (UIViewController)Platform.GetRenderer(this.Platform.Page);
}

public override UIViewController ChildViewControllerForStatusBarStyle()
{
return ChildViewControllers?.LastOrDefault();
}

public override bool ShouldAutorotate()
{
if ((ChildViewControllers != null) && (ChildViewControllers.Length > 0))
Expand Down Expand Up @@ -167,5 +184,11 @@ public override void ViewWillAppear(bool animated)
Platform.WillAppear();
base.ViewWillAppear(animated);
}

public override void ViewDidLoad()
{
base.ViewDidLoad();
SetNeedsStatusBarAppearanceUpdate();
}
}
}