public void UpdateLayoutSize(SlideCustomDialog view) { _topMax = 0; _topMin = 0; _bottomMax = view.HeightRequest * _density; _bottomMin = 0; if (view.MenuOrientations == MenuOrientation.BottomToTop) { _isToptoBottom = false; _topMax = (ScreenSizeHelper.ScreenHeight) * _density; _topMin = (ScreenSizeHelper.ScreenHeight - view.HeightRequest - view.BottomMargin) * _density; _bottomMax = (ScreenSizeHelper.ScreenHeight + view.HeightRequest) * _density; _bottomMin = (ScreenSizeHelper.ScreenHeight - view.BottomMargin) * _density; } if (!view.IsFullScreen) { _left = view.LeftMargin * _density; _right = (view.LeftMargin + view.WidthRequest) * _density; } else { _left = view.LeftMargin * _density; _right = (ScreenSizeHelper.ScreenWidth - view.RightMargin) * _density; } }
void CheckViewBound(SlideCustomDialog view) { if (ScreenSizeHelper.ScreenHeight == 0 || ScreenSizeHelper.ScreenWidth == 0) { throw new Exception("Please set ScreenSizeHelper.ScreenHeight or ScreenSizeHelper.ScreenWidth"); } if (view.HeightRequest <= 0) { throw new Exception("Please set SildeMenuView HeightRequest"); } }
public VerticalDrawer(SlideCustomDialog view, double density = 1.0) { _density = density; view.GetIsShown = () => { return(!_willShown); }; CheckViewBound(view); UpdateLayoutSize(view); view.HideEvent = LayoutHideStatus; }