在屏幕旋转时隐藏状态栏

Hide status bar on screen rotation

是否可以在 Windows Phone 8.1 中隐藏屏幕旋转事件的状态栏?

以下代码在 Portrait 方向显示状态栏,并在 Landscape 方向隐藏状态栏。

首先您需要订阅 ApplicationView.VisibleBoundsChanged 活动。例如,您可以在 App.xaml.cs 构造函数中执行此操作:

ApplicationView.GetForCurrentView().VisibleBoundsChanged += OnVisibleBoundsChanged;

您使用 StatusBar.GetForCurrentView() 实例隐藏了状态栏。

OnVisibleBoundsChanged 方法:

private async void OnVisibleBoundsChanged(ApplicationView sender, object args)
{
    var currentView = ApplicationView.GetForCurrentView();
    if (currentView.Orientation == ApplicationViewOrientation.Portrait)
    {
        await StatusBar.GetForCurrentView().ShowAsync();
    }
    else if (currentView.Orientation == ApplicationViewOrientation.Landscape)
    {
        await StatusBar.GetForCurrentView().HideAsync();
    }
}