private async void AndroidPanGestureRecognizer_PanUpdated(object sender, PanUpdatedEventArgs e)
        {
            ContentView view = sender as ContentView;

            switch (e.StatusType)
            {
            case GestureStatus.Started:
                StartPanDownTime = DateTimeOffset.Now;
                StartY           = view.Y;
                break;

            case GestureStatus.Running:
                if (e.TotalY > 0)
                {
                    Indictor.TranslateTo(0, e.TotalY + StartY, 20, Easing.Linear);
                    PageView.TranslateTo(0, e.TotalY + StartY, 20, Easing.Linear);
                }
                break;

            case GestureStatus.Completed:
                EndPanDownTime = DateTimeOffset.Now;
                if (EndPanDownTime.Value.ToUnixTimeMilliseconds() - StartPanDownTime.Value.ToUnixTimeMilliseconds() < SwipeToCloseTime)
                {
                    await Rg.Plugins.Popup.Services.PopupNavigation.Instance.PopAsync();
                }
                else
                {
                    PageView.TranslateTo(0, 0, 250, Easing.Linear);
                    Indictor.TranslateTo(0, 0, 250, Easing.Linear);
                }
                break;
            }

            if (e.StatusType == GestureStatus.Completed || e.StatusType == GestureStatus.Canceled)
            {
                StartPanDownTime = null;
                EndPanDownTime   = null;
            }
        }