protected override void OnElementChanged(ElementChangedEventArgs <View> e) { base.OnElementChanged(e); if (e.OldElement != null) { RemoveGestureRecognizer(panGesture); panGesture.RemoveTarget(panGestureToken); } if (e.NewElement != null) { var dragView = Element as DraggableView; panGesture = new UIPanGestureRecognizer(); panGestureToken = panGesture.AddTarget(DetectPan); AddGestureRecognizer(panGesture); dragView.RestorePositionCommand = new Command(() => { if (!firstTime) { Center = originalPosition; } }); } }
protected override void OnElementChanged(ElementChangedEventArgs <View> e) { base.OnElementChanged(e); if (e.OldElement != null) { RemoveGestureRecognizer(panGesture); panGesture.RemoveTarget(panGestureToken); } if (e.NewElement != null) { displayMetrics = UIScreen.MainScreen.Bounds; sH = displayMetrics.Height; sW = displayMetrics.Width; var dragView = Element as RadialMenu; panGesture = new UIPanGestureRecognizer(); panGestureToken = panGesture.AddTarget(DetectPan); AddGestureRecognizer(panGesture); dragView.RestorePositionCommand = new Command(() => { if (!firstTime) { Center = originalPosition; } }); } }
protected override void OnElementChanged(ElementChangedEventArgs <View> e) { base.OnElementChanged(e); if (e.OldElement != null) { RemoveGestureRecognizer(panGesture); panGesture.RemoveTarget(panGestureToken); } if (e.NewElement != null) { var dragView = Element as DrawableAbsoluteLayout; panGesture = new UIPanGestureRecognizer(); panGestureToken = panGesture.AddTarget(DetectPan); AddGestureRecognizer(panGesture); tapGesture = new UITapGestureRecognizer(); tapGesture.NumberOfTapsRequired = 2; tapGestureToken = tapGesture.AddTarget(DetectTapped); AddGestureRecognizer(tapGesture); dragView.RestorePositionCommand = new Command(() => { if (!firstTime) { Center = originalPosition; } }); } }
public void AttachAction(Action <NSObject> action) { if (GestureView.GestureRecognizers == null || GestureView.GestureRecognizers?.Length == 0) { var recognizer = new TGesture(); GestureView.AddGestureRecognizer(recognizer); } if (GestureToken == null) { GestureToken = GestureView.GestureRecognizers [0]?.AddTarget(action); } }
public void DetachAction() { if (GestureToken != null) { if (GestureView.GestureRecognizers != null && GestureView.GestureRecognizers.Length > 0) { foreach (var recognizer in GestureView.GestureRecognizers) { if (recognizer is TGesture) { recognizer.RemoveTarget(GestureToken); } } } GestureToken = null; } }
public BarLineChartGesture() { tapGestureRecognizer = new UITapGestureRecognizer(); pinchGestureRecognizer = new UIPinchGestureRecognizer() { ShouldRecognizeSimultaneously = GestureRecognize }; doubleTapGestureRecognizer = new UITapGestureRecognizer { NumberOfTapsRequired = 2 }; panGestureRecognizer = new UIPanGestureRecognizer() { ShouldRecognizeSimultaneously = GestureRecognize, }; tapToken = tapGestureRecognizer.AddTarget(HandleTap); pinchToken = pinchGestureRecognizer.AddTarget(HandlePinch); doubleTapToken = doubleTapGestureRecognizer.AddTarget(HandleDoubleTap); panToken = panGestureRecognizer.AddTarget(HandlePan); pinchEvent = new PinchEvent(); panEvent = new PanEvent(); }
public PieRadarChartGesture() { tapGesture = new UITapGestureRecognizer(); touchGesture = new TouchGesture(this); tapToken = tapGesture.AddTarget(HandleTap); }