protected override void OnElementChanged(ElementChangedEventArgs<Xamarin.Forms.Frame> e)
        {
            base.OnElementChanged (e);

            if (e.NewElement != null) {
                _frame = e.NewElement as GesturedFrame;

                if (_frame.HasSwipeRightToLeft)
                    NativeView.AddGestureRecognizer (new UISwipeGestureRecognizer (g => _frame.DoSwipeRightToLeft ()) { Direction = UISwipeGestureRecognizerDirection.Left });

                if (_frame.HasSwipeLeftToRight)
                    NativeView.AddGestureRecognizer (new UISwipeGestureRecognizer (g => _frame.DoSwipeLeftToRight ()) { Direction = UISwipeGestureRecognizerDirection.Right });

                if (_frame.HasSwipeBottomToTop)
                    NativeView.AddGestureRecognizer (new UISwipeGestureRecognizer (g => _frame.DoSwipeBottomToTop ()) { Direction = UISwipeGestureRecognizerDirection.Up });

                if (_frame.HasSwipeTopToBottom)
                    NativeView.AddGestureRecognizer (new UISwipeGestureRecognizer (g => _frame.DoSwipeTopToBottom ()) { Direction = UISwipeGestureRecognizerDirection.Down });

                if (_frame.HasTap)
                    NativeView.AddGestureRecognizer (new UITapGestureRecognizer (g => _frame.DoTap ()) { NumberOfTapsRequired = 1 });

                if (_frame.HasLongTap)
                    NativeView.AddGestureRecognizer (new UILongPressGestureRecognizer (g => _frame.DoLongTap ()));
            }
        }