void OnLayout() { if (Geometry.Width == 0 || Geometry.Height == 0) { return; } var bound = Geometry; int navBarHeight; if (_navBarIsVisible) { var navBound = bound; navBarHeight = Forms.ConvertToScaledPixel(_navBar.GetDefaultHeight()); navBound.Height = navBarHeight; _navBar.Show(); _navBar.Geometry = navBound; _navBar.RaiseTop(); } else { navBarHeight = 0; _navBar.Hide(); } bound.Y += navBarHeight; bound.Height -= navBarHeight; _viewStack.Geometry = bound; }
void OnLayoutUpdated(object sender, LayoutEventArgs e) { if (_navBarIsVisible) { _navBarHeight = _defaultNavBarHeight; _navBar.Show(); _navBar.Move(e.Geometry.X, e.Geometry.Y); _navBar.Resize(e.Geometry.Width, _navBarHeight); } else { _navBarHeight = 0; _navBar.Hide(); } CurrentNative.Show(); CurrentNative.Move(e.Geometry.X, e.Geometry.Y + _navBarHeight); CurrentNative.Resize(e.Geometry.Width, e.Geometry.Height - _navBarHeight); }