android imageview xamarin.android gesture

android - GenericMotion-Acción hacia abajo no disparando



display image xamarin android (1)

GenericMotion no puede detectar el gesto de tu dedo. Creo que solo se usa para informar sobre un evento de movimiento. Puede consultar el documento aquí.

Por ejemplo, puede mover su vista de imagen de arriba a abajo, luego GenericMotion puede detectar la acción "mover".

Si desea detectar su evento de dedo, creo que puede lograr OnTouchListener .

Por ejemplo:

imgview.SetOnTouchListener(new MyTouchListener());

lograr MyTouchListener:

public class MyTouchListener: Java.Lang.Object, View.IOnTouchListener { public bool OnTouch(View v, MotionEvent e) { throw new NotImplementedException(); } public bool OnTouchEvent(View v, MotionEvent e) { if (e.Action == MotionEventActions.Down) { Log.Debug("Mike", "Down"); Console.WriteLine("Down"); return true; } if (e.Action == MotionEventActions.Up) { Log.Debug("Mike", "Up"); Console.WriteLine("Up"); return true; } if (e.Action == MotionEventActions.Move) { Log.Debug("Mike", "Move"); Console.WriteLine("Move"); return true; } return false; } }

También puede lograr IOnGestureListener para detectar su gesto.

Quiero rastrear todo el movimiento de un dedo que comenzó tocando mi ImageView. Descubrí que el evento GenericMotion debería ser el correcto para usar.

¿Qué se supone que debo hacer (o evitar) para obtener Acciones Abajo, Mover y Subir en el evento GenericMotion? Solo obtengo acciones de HoverEnter, HoverMove y HoverExit, incluso si comienzo tocando el centro de mi ImageView.

Android: ¿OnTouch, MotionEvent.ACTION_MOVE no es reconocido?

Aquí aprendí que sin manejar la acción Abajo no puedo obtener las acciones restantes, ¡pero no obtengo la acción Abajo!

private void OnPlayerInfoRatingGenericMotion(object sender, View.GenericMotionEventArgs e) { //goes here only with hover actions if (e.Event.Action==MotionEventActions.Down) { //never goes here } if (e.Event.Action==MotionEventActions.Move) { //never goes here } }

¿Qué estoy haciendo mal?