void OnPanUpdated(object sender, PanUpdatedEventArgs e)
        {
            View content = (View)sender;

            switch (e.StatusType)
            {
            case GestureStatus.Running:
                try
                {
                    translatedX = e.TotalX;
                    translatedY = e.TotalY;
                }
                catch (Exception err)
                {
                    System.Diagnostics.Debug.WriteLine("" + err.Message);
                };
                break;

            case GestureStatus.Completed:


                if (translatedX < 0 && Math.Abs(translatedX) > Math.Abs(translatedY))
                {
                    callback.OnLeftSwipe(content);
                }
                else if ((translatedX > 0 && Math.Abs(translatedX) > Math.Abs(translatedY)))
                {
                    callback.OnRightSwipe(content);
                }
                else if ((translatedX < 0 && Math.Abs(translatedY) > Math.Abs(translatedX)))
                {
                    callback.OnTopSwipe(content);
                }
                else
                {
                    callback.OnNothingSwipe(content);
                }
                break;
            }
        }
Beispiel #2
0
        private void PanGesture_PanUpdated(object sender, PanUpdatedEventArgs e)
        {
            switch (e.StatusType)
            {
            case GestureStatus.Running:

                try
                {
                    _translateX = e.TotalX;
                    _translateY = e.TotalY;
                }
                catch (Exception err)
                {
                    System.Diagnostics.Debug.WriteLine("" + err.Message);
                }
                break;

            case GestureStatus.Completed:

                System.Diagnostics.Debug.WriteLine("translatedX : " + _translateX);
                System.Diagnostics.Debug.WriteLine("translatedY : " + _translateY);

                if (_translateX < 0 && Math.Abs(_translateX) > Math.Abs(_translateY))
                {
                    iSwipeCallBack.OnLeftSwipe();
                }
                else if (_translateX > 0 && _translateX > Math.Abs(_translateY))
                {
                    iSwipeCallBack.OnRightSwipe();
                }
                //else
                //{
                //    iSwipeCallBack.OnNothingSwiped(Content);
                //}

                break;
            }
        }