我很欣赏我在这个回答的时候已经很晚了,但是我觉得我已经把这个放在这里,因为其他任何人都曾经有过一段时间我曾试图解决这个问题.
我的Droid MainActivity现在看起来像这样:
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
//====================================
int uiOptions = (int)Window.DecorView.SystemUiVisibility;
uiOptions |= (int)SystemUiFlags.LowProfile;
uiOptions |= (int)SystemUiFlags.Fullscreen;
uiOptions |= (int)SystemUiFlags.HideNavigation;
uiOptions |= (int)SystemUiFlags.ImmersiveSticky;
Window.DecorView.SystemUiVisibility = (StatusBarVisibility)uiOptions;
//====================================
LoadApplication(new Pages.App());
}
评论的平等之间的那一点是最佳点.理想情况下,还需要在重写OnStart和OnResume方法以及OnCreate中调用它,以确保标志保持设置.
如果您使用“Immersive”而不是“ImmersiveSticky”作为最后一个标志,它将使顶部状态和底部系统导航栏根据需要消失,但是当它们重新出现时(例如,从屏幕顶部向下拖动)底部不会再消失.因此,使用“ImmersiveSticky”是小孩.