diff options
Diffstat (limited to 'Xamarin.Forms.Core/PlatformConfiguration/iOSSpecific/Page.cs')
-rw-r--r-- | Xamarin.Forms.Core/PlatformConfiguration/iOSSpecific/Page.cs | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/Xamarin.Forms.Core/PlatformConfiguration/iOSSpecific/Page.cs b/Xamarin.Forms.Core/PlatformConfiguration/iOSSpecific/Page.cs new file mode 100644 index 00000000..a32a1521 --- /dev/null +++ b/Xamarin.Forms.Core/PlatformConfiguration/iOSSpecific/Page.cs @@ -0,0 +1,60 @@ +namespace Xamarin.Forms.PlatformConfiguration.iOSSpecific +{ + using FormsElement = Forms.Page; + + public static class Page + { + public static readonly BindableProperty PrefersStatusBarHiddenProperty = + BindableProperty.Create("PrefersStatusBarHidden", typeof(StatusBarHiddenMode), typeof(Page), StatusBarHiddenMode.Default); + + public static StatusBarHiddenMode GetPrefersStatusBarHidden(BindableObject element) + { + return (StatusBarHiddenMode)element.GetValue(PrefersStatusBarHiddenProperty); + } + + public static void SetPrefersStatusBarHidden(BindableObject element, StatusBarHiddenMode value) + { + element.SetValue(PrefersStatusBarHiddenProperty, value); + } + + public static StatusBarHiddenMode PrefersStatusBarHidden(this IPlatformElementConfiguration<iOS, FormsElement> config) + { + return GetPrefersStatusBarHidden(config.Element); + } + + public static IPlatformElementConfiguration<iOS, FormsElement> SetPrefersStatusBarHidden(this IPlatformElementConfiguration<iOS, FormsElement> config, StatusBarHiddenMode value) + { + SetPrefersStatusBarHidden(config.Element, value); + return config; + } + + public static readonly BindableProperty PreferredStatusBarUpdateAnimationProperty = + BindableProperty.Create("PreferredStatusBarUpdateAnimation", typeof(UIStatusBarAnimation), typeof(Page), UIStatusBarAnimation.None); + + public static UIStatusBarAnimation GetPreferredStatusBarUpdateAnimation(BindableObject element) + { + return (UIStatusBarAnimation)element.GetValue(PreferredStatusBarUpdateAnimationProperty); + } + + public static void SetPreferredStatusBarUpdateAnimation(BindableObject element, UIStatusBarAnimation value) + { + if (value == UIStatusBarAnimation.Fade) + element.SetValue(PreferredStatusBarUpdateAnimationProperty, value); + else if (value == UIStatusBarAnimation.Slide) + element.SetValue(PreferredStatusBarUpdateAnimationProperty, value); + else + element.SetValue(PreferredStatusBarUpdateAnimationProperty, value); + } + + public static UIStatusBarAnimation PreferredStatusBarUpdateAnimation(this IPlatformElementConfiguration<iOS, FormsElement> config) + { + return GetPreferredStatusBarUpdateAnimation(config.Element); + } + + public static IPlatformElementConfiguration<iOS, FormsElement> SetPreferredStatusBarUpdateAnimation(this IPlatformElementConfiguration<iOS, FormsElement> config, UIStatusBarAnimation value) + { + SetPreferredStatusBarUpdateAnimation(config.Element, value); + return config; + } + } +} |