【问题标题】:xamarin.forms/droid: hide status bar, contentpage don't resize to fullscreenxamarin.forms/droid:隐藏状态栏,内容页面不调整为全屏
【发布时间】:2017-03-30 19:16:17
【问题描述】:

我可以毫无问题地隐藏 xamarin.droid 中的状态栏。

我也可以使用 xamarin.forms 将其隐藏,但 ContentPage 不会调整为全屏,因此我在顶部还有一个没有文本的彩色条(在我的屏幕截图中为红色条)。

我尝试了几件事,例如这个:

    public void HideStatusBar()
    {
        var activity = (Activity)Forms.Context;
        var window = activity.Window;
        var attrs = window.Attributes;
        attrs.Flags |= Android.Views.WindowManagerFlags.Fullscreen;
        window.Attributes = attrs;

        window.ClearFlags(WindowManagerFlags.ForceNotFullscreen);
        window.AddFlags(WindowManagerFlags.Fullscreen);

        var decorView = window.DecorView;

        var uiOptions =
            (int)Android.Views.SystemUiFlags.LayoutStable |
            (int)Android.Views.SystemUiFlags.LayoutHideNavigation |
            (int)Android.Views.SystemUiFlags.LayoutFullscreen |
            (int)Android.Views.SystemUiFlags.HideNavigation |
            (int)Android.Views.SystemUiFlags.Fullscreen |
            (int)Android.Views.SystemUiFlags.Immersive;

        decorView.SystemUiVisibility = (Android.Views.StatusBarVisibility)uiOptions;

        window.DecorView.SystemUiVisibility = StatusBarVisibility.Hidden;
    }

screenshot with status

screenshot without status

我正在使用visualstudio 2017、win10、最新的xamarin进行开发。

最好的问候,非常感谢您的回答!如果这是一个重复的问题,请提前抱歉,但我最近 2 小时的搜索没有得到任何答案。

他们

【问题讨论】:

  • 我认为你上传了两次相同的屏幕截图
  • 你是对的,我第一次这样做,但在发布之前我修复了它。我是这么想的...但是,第一个截图顶部的红色条充满了状态文本,下一个截图顶部是空的。

标签: android xamarin.forms fullscreen statusbar


【解决方案1】:

现在我真的很惊讶。 xamarin.forms 的更新已可用,当前为 2.3.4.224。猜猜看:状态栏应该消失了!

看起来是个不错的意外!无论如何,非常感谢...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-09
    • 1970-01-01
    • 2017-10-11
    • 1970-01-01
    相关资源
    最近更新 更多