private static LayoutOptions GetLayoutOptions(OnPlatformLayoutOptions options) { LayoutOptions retVal = LayoutOptions.Fill; FormLayoutOptions option = FormLayoutOptions.NotSet; Device.OnPlatform( Android: () => { option = OnPlatformLayoutOptions.GetAndroidValue(options); }, iOS: () => { option = OnPlatformLayoutOptions.GetiOSValue(options); }, WinPhone: () => { option = OnPlatformLayoutOptions.GetWinPhoneValue(options); } ); switch (option) { case FormLayoutOptions.Center: retVal = LayoutOptions.Center; break; case FormLayoutOptions.CenterAndExpand: retVal = LayoutOptions.CenterAndExpand; break; case FormLayoutOptions.End: retVal = LayoutOptions.End; break; case FormLayoutOptions.EndAndExpand: retVal = LayoutOptions.EndAndExpand; break; case FormLayoutOptions.Fill: retVal = LayoutOptions.Fill; break; case FormLayoutOptions.FillAndExpand: retVal = LayoutOptions.FillAndExpand; break; case FormLayoutOptions.Start: retVal = LayoutOptions.Start; break; case FormLayoutOptions.StartAndExpand: retVal = LayoutOptions.StartAndExpand; break; } return(retVal); }
internal static void DefaultViewProperties(IView view) { View formView = view.GetView(); BaseControl me = view.BaseControl; Device.OnPlatform( Android: () => { if (OnPlatformDouble.GetAndroidValue(me.HeightRequest) != 0) { formView.HeightRequest = OnPlatformDouble.GetAndroidValue(me.HeightRequest); } if (OnPlatformDouble.GetAndroidValue(me.WidthRequest) != 0) { formView.WidthRequest = OnPlatformDouble.GetAndroidValue(me.WidthRequest); } if (!String.IsNullOrEmpty(OnPlatformString.GetAndroidValue(me.BackgroundColor))) { formView.BackgroundColor = Color.FromHex(OnPlatformString.GetAndroidValue(me.BackgroundColor)); } if (OnPlatformLayoutOptions.GetAndroidValue(me.HorizontalOptions) != FormLayoutOptions.NotSet) { formView.HorizontalOptions = GetLayoutOptions(me.HorizontalOptions); } if (OnPlatformLayoutOptions.GetAndroidValue(me.VerticalOptions) != FormLayoutOptions.NotSet) { formView.VerticalOptions = GetLayoutOptions(me.VerticalOptions); } }, iOS: () => { if (OnPlatformDouble.GetiOSValue(me.HeightRequest) != 0) { formView.HeightRequest = OnPlatformDouble.GetiOSValue(me.HeightRequest); } if (OnPlatformDouble.GetiOSValue(me.WidthRequest) != 0) { formView.WidthRequest = OnPlatformDouble.GetiOSValue(me.WidthRequest); } if (!String.IsNullOrEmpty(OnPlatformString.GetiOSValue(me.BackgroundColor))) { formView.BackgroundColor = Color.FromHex(OnPlatformString.GetiOSValue(me.BackgroundColor)); } if (OnPlatformLayoutOptions.GetiOSValue(me.HorizontalOptions) != FormLayoutOptions.NotSet) { formView.HorizontalOptions = GetLayoutOptions(me.HorizontalOptions); } if (OnPlatformLayoutOptions.GetiOSValue(me.VerticalOptions) != FormLayoutOptions.NotSet) { formView.VerticalOptions = GetLayoutOptions(me.VerticalOptions); } }, WinPhone: () => { if (OnPlatformDouble.GetWinPhoneValue(me.HeightRequest) != 0) { formView.HeightRequest = OnPlatformDouble.GetWinPhoneValue(me.HeightRequest); } if (OnPlatformDouble.GetWinPhoneValue(me.WidthRequest) != 0) { formView.WidthRequest = OnPlatformDouble.GetWinPhoneValue(me.WidthRequest); } if (!String.IsNullOrEmpty(OnPlatformString.GetWinPhoneValue(me.BackgroundColor))) { formView.BackgroundColor = Color.FromHex(OnPlatformString.GetWinPhoneValue(me.BackgroundColor)); } if (OnPlatformLayoutOptions.GetWinPhoneValue(me.HorizontalOptions) != FormLayoutOptions.NotSet) { formView.HorizontalOptions = GetLayoutOptions(me.HorizontalOptions); } if (OnPlatformLayoutOptions.GetWinPhoneValue(me.VerticalOptions) != FormLayoutOptions.NotSet) { formView.VerticalOptions = GetLayoutOptions(me.VerticalOptions); } } ); }