从不调用 Xamarin.iOS 自定义页面渲染器覆盖 PreferredStatusBarStyle

问题描述

我为 iOS 编写了一个小的自定义渲染器,它能够在我需要某个页面时更改 StatusBar 文本颜色。渲染器只是一个基本的 PageRenderer,根据其他 SO 问题和 iOS 文档,您应该执行以下操作:

public override void ViewWillAppear(bool animated)
{
    base.ViewWillAppear(animated);
    //Call this method
    this.SetNeedsstatusBarappearanceUpdate();
}

public override UIStatusBarStyle PreferredStatusBarStyle()
{
    //This should be called and you should be able to return you desired style
}

然而,PreferredStatusBarStyle 覆盖方法从未被调用。 经过更多研究,原因肯定是我的页面被包装在一个导航页面中。 Swift 中有一个解决方案来调用 NavigationControllers 上的扩展,如这篇 SA 帖子中所述:link

我不知道如何在我的自定义渲染器中制作这样的扩展。如果有人有线索,我会很高兴听到。我找不到有关该主题的任何内容

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)