iOS 上的页面状态栏可见性

此特定于 iOS 平台的功能用于设置 Page 上的状态栏的可见性,并提供用于控制状态栏如何进入或退出 Page 的功能。 可以通过将 Page.PrefersStatusBarHidden 附加属性设置为 StatusBarHiddenMode 枚举的值,并(可选)将 Page.PreferredStatusBarUpdateAnimation 附加属性设置为 UIStatusBarAnimation 枚举的值,在 XAML 中使用该功能:

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
             ios:Page.PrefersStatusBarHidden="True"
             ios:Page.PreferredStatusBarUpdateAnimation="Fade">
  ...
</ContentPage>

或者,可以使用 Fluent API 从 C# 使用它:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...

On<iOS>().SetPrefersStatusBarHidden(StatusBarHiddenMode.True)
         .SetPreferredStatusBarUpdateAnimation(UIStatusBarAnimation.Fade);

Page.On<iOS> 方法指定此平台特定仅在 iOS 上运行。 Xamarin.Forms.PlatformConfiguration.iOSSpecific 命名空间中的 Page.SetPrefersStatusBarHidden 方法用于通过指定 StatusBarHiddenMode 枚举值之一来设置 Page 上状态栏的可见性:DefaultTrueFalse。 无论设备方向如何,StatusBarHiddenMode.TrueStatusBarHiddenMode.False 值都会设置状态栏可见性,而 StatusBarHiddenMode.Default 值会在垂直方向紧凑的环境中隐藏状态栏。

结果是可以设置 Page 上状态栏的可见性:

状态栏可见性平台特定

注意

TabbedPage 上,指定的 StatusBarHiddenMode 枚举值还会更新所有子页面上的状态栏。 在所有其他 Page 派生类型上,指定的 StatusBarHiddenMode 枚举值仅更新当前页面上的状态栏。

Page.SetPreferredStatusBarUpdateAnimation 方法用于通过指定 UIStatusBarAnimation 枚举值之一来设置状态栏进入或退出 Page 的方式:NoneFadeSlide。 如果指定了 FadeSlide 枚举值,则当状态栏进入或退出 Page 时,会执行 0.25 秒的动画。