void OnTouch(TouchGestureRecognizer.TouchArgs e) { switch (e.State) { case TouchGestureRecognizer.TouchState.Started: _tapTime = DateTime.Now; break; case TouchGestureRecognizer.TouchState.Ended: if (e.Inside) { var range = (DateTime.Now - _tapTime).TotalMilliseconds; if (range > 800) { LongClickHandler(); } else { ClickHandler(); } } break; case TouchGestureRecognizer.TouchState.Cancelled: break; } }
static void ActionActivator(object sender, TouchGestureRecognizer.TouchArgs e) { var gest = (TouchGestureRecognizer)sender; if (!Collection.ContainsKey(gest.View)) { return; } foreach (var valueAction in Collection[gest.View].Actions) { valueAction?.Invoke(e); } }
void OnTouch(TouchGestureRecognizer.TouchArgs e) { switch (e.State) { case TouchGestureRecognizer.TouchState.Started: BringLayer(); break; case TouchGestureRecognizer.TouchState.Ended: EndAnimation(); break; case TouchGestureRecognizer.TouchState.Cancelled: if (!IsDisposed && _layer != null) { _layer.Layer.RemoveAllAnimations(); _layer.Alpha = 0; } break; } }