I'm not able to set my home indicator to hidden. I have a NavigationPage with ContentPages.
I'm aware that I should override PrefersHomeIndicatorAutoHidden and then call SetNeedsUpdateOfHomeIndicatorAutoHidden(). Doesn't seem to work though.
I also tried ChildViewControllerForHomeIndicatorAutoHidden (see code below) but it doesn't seem to work at all.
What am I doing wrong?
using System.Linq;
using UIKit;
using Xamarin.Forms;
using PageRenderer = MyNamespace.PageRenderer;
using NavigationRenderer = MyNamespace.NavigationRenderer;
[assembly: ExportRenderer(typeof(ContentPage), typeof(PageRenderer))]
[assembly: ExportRenderer(typeof(NavigationPage), typeof(NavigationRenderer))]
namespace MyNamespace
{
public class PageRenderer : Xamarin.Forms.Platform.iOS.PageRenderer
{
public override bool PrefersHomeIndicatorAutoHidden => true;
public override void ViewDidAppear(bool animated)
{
base.ViewDidAppear(animated);
SetNeedsUpdateOfHomeIndicatorAutoHidden();
}
}
public class NavigationRenderer : Xamarin.Forms.Platform.iOS.NavigationRenderer
{
public override bool PrefersHomeIndicatorAutoHidden => true;
public override UIViewController ChildViewControllerForHomeIndicatorAutoHidden
{
get
{
return ViewControllers.Any() ? ViewControllers.Last() : TopViewController;
}
}
public override void ViewDidAppear(bool animated)
{
base.ViewDidAppear(animated);
SetNeedsUpdateOfHomeIndicatorAutoHidden();
}
}
}