private void BackOverBarTapped(object sender, EventArgs e) { if (!BVBar.IsVisible) { return; } var pageHeight = Height; if (_isNearByExpanded) { ImgFindVipTable.TranslateTo(0, 0, AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgFindVipTable.ScaleTo(_findVipTableInfoGridScale, AppThemeConstants.AnimationSpeed, Easing.SinInOut); SearchBarGrid.TranslateTo(0, 0, AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgSearchIcon.TranslateTo(0, 0, AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgSearchIcon.FadeTo(0, AppThemeConstants.AnimationSpeed, Easing.SinInOut); FrNearBy.TranslateTo(0, pageHeight * _bottomPosition, AppThemeConstants.AnimationSpeed, Easing.SinInOut); } else { ImgFindVipTable.TranslateTo(-(ImgFindVipTable.Margin.Left - 10), -(ImgFindVipTable.Margin.Top + 25), AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgFindVipTable.ScaleTo(_findVipTableInfoGridScale * 0.75, AppThemeConstants.AnimationSpeed, Easing.SinInOut); SearchBarGrid.TranslateTo(0, ImgFindVipTable.Margin.Top + 25, AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgSearchIcon.TranslateTo(45, 0, AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgSearchIcon.FadeTo(1, AppThemeConstants.AnimationSpeed, Easing.SinInOut); FrNearBy.TranslateTo(0, pageHeight - (pageHeight * _topPosition), AppThemeConstants.AnimationSpeed, Easing.SinInOut); } _isNearByExpanded = !_isNearByExpanded; }
private void BackOverBarPanUpdated(object sender, PanUpdatedEventArgs e) { if (!BVBar.IsVisible) { return; } switch (e.StatusType) { case GestureStatus.Running: _previousYPosition = e.TotalY; FrNearBy.TranslateTo(0, e.TotalY, AppThemeConstants.AnimationSpeed, Easing.SinInOut); break; case GestureStatus.Completed: var pageHeight = Height; var bottomPosition = pageHeight * _bottomPosition; var topPosition = pageHeight - (pageHeight * _topPosition); if (_previousYPosition < 0) { // Moving to top ImgFindVipTable.TranslateTo(-(ImgFindVipTable.Margin.Left - 10), -(ImgFindVipTable.Margin.Top + 25), AppThemeConstants.AnimationSpeed, Easing.SinIn); ImgFindVipTable.ScaleTo(_findVipTableInfoGridScale * 0.75, AppThemeConstants.AnimationSpeed, Easing.SinIn); SearchBarGrid.TranslateTo(0, ImgFindVipTable.Margin.Top + 25, AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgSearchIcon.TranslateTo(45, 0, AppThemeConstants.AnimationSpeed, Easing.SinIn); ImgSearchIcon.FadeTo(1, AppThemeConstants.AnimationSpeed, Easing.SinIn); FrNearBy.TranslateTo(0, topPosition, AppThemeConstants.AnimationSpeed, Easing.SinIn); _isNearByExpanded = true; } else { // Moving to bottom ImgFindVipTable.TranslateTo(0, 0, AppThemeConstants.AnimationSpeed, Easing.SinOut); ImgFindVipTable.ScaleTo(_findVipTableInfoGridScale, AppThemeConstants.AnimationSpeed, Easing.SinOut); SearchBarGrid.TranslateTo(0, 0, AppThemeConstants.AnimationSpeed, Easing.SinInOut); ImgSearchIcon.TranslateTo(0, 0, AppThemeConstants.AnimationSpeed, Easing.SinOut); ImgSearchIcon.FadeTo(0, AppThemeConstants.AnimationSpeed, Easing.SinOut); FrNearBy.TranslateTo(0, bottomPosition, AppThemeConstants.AnimationSpeed, Easing.SinOut); _isNearByExpanded = false; } break; } }