Android OnGestureListener Fling est pas détecter
Je veux détecter fling le mouvement dans un bloc de l'écran. J'utilise le code suivant pour que.
public class MyinfoActivity extends Activity implements OnGestureListener {
@Override
public void onCreate(Bundle savedInstanceState) {
..........
..........
gestureScanner = new GestureDetector(this);
resBlock = (TableRow) findViewById(R.id.ResBlock);
gestureScanner = new GestureDetector(this);
}
@Override
public boolean onTouchEvent(MotionEvent me){
Log.d(null,"Touch");
if (gestureScanner.onTouchEvent(me))
return gestureScanner.onTouchEvent(me);
else
return false;
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2,
float velocityX, float velocityY) {
Log.d(null,"Fling");
............
............
}
@Override
public boolean onDown(MotionEvent arg0) {
return false;
}
@Override
public void onLongPress(MotionEvent e) {}
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2,
float distanceX, float distanceY) {
return false;
}
@Override
public void onShowPress(MotionEvent e) {}
@Override
public boolean onSingleTapUp(MotionEvent e) {
return false;
}
}
De la détection de la TouchEvent, mais il ne détecte pas de tout jeter en mouvement. Quel est le problème dans mon code?
OriginalL'auteur dev_android | 2011-03-15
Vous devez vous connecter pour publier un commentaire.
J'ai utilisé le code suivant et le problème est réglé.
true
dans leonDown(MotionEvent)
méthode!et quelle est la valeur serait MAJOR_MOVE? 😉
OriginalL'auteur dev_android
D'abord votre méthode onTouchEvent est incorrect et ne cause 2 appel de onTouchEvent par le gestureScanner objet.
Vous avez besoin de changer par la présente :
Vous avez également cette ligne deux fois :
Essayez ensuite de modifier votre onFling méthode comme ceci :
OriginalL'auteur Benjamin
retour
true
dans votreonDown
méthodeOriginalL'auteur Wesley