J'ai utilisé la bibliothèque droidQuery, qui est vraiment géniale et facile à utiliser. Je l'ai utilisé pour la détection de gestes personnalisés principalement jusqu'à présent. J'ai un swipeInterceptorView avec un écouteur de balayage pour détecter des balayages, mais j'ai également besoin de détecter le pincement et le zoom dans mon application. Merci!Android Droid Query Comment reconnaître le pincement et le zoom
0
A
Répondre
2
La bibliothèque droidQuery ne prend pas en charge le zoom de pincement, mais vous pouvez utiliser « capacité de s avec balayant Android » s droidQueryScaleGestureDetector pour obtenir la détection de geste que vous recherchez.
L'exemple suivant devrait vous aider:
public class MyActivity extends Activity {
private float scaleFactor = 1.0f;
private ScaleGestureDetector scaleGestureDetector;
private SwipeInterceptorView view;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//set main view to the main layout
setContentView(R.layout.main);
//get a reference to the content view
view = (SwipeInterceptorView) findViewById(R.id.swipe_view);
//get the scale gesture detector
scaleGestureDetector = new ScaleGestureDetector(context, new ScaleListener());
//add Swiper
view.setSwipeListener(new SwipeListener() {
public void onUpSwipe(View v) {
//TODO handle up swipe
}
public void onRightSwipe(View v) {
//TODO handle right swipe
}
public void onLeftSwipe(View v) {
//TODO handle left swipe
}
public void onDownSwipe(View v) {
//TODO handle down swipe
}
});
view.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (scaleGestureDetector.onTouchEvent(event))//this will cause a pinch zoom if two fingers are down
return true;
//if no pinch zoom was handled, the swiping gesture will take over.
return super.onTouch(v, event);
}
});
}
//this inner class copied from http://www.vogella.com/articles/AndroidTouch/article.html#scaleGestureDetector
private class ScaleListener extends ScaleGestureDetector.SimpleOnScaleGestureListener {
@Override
public boolean onScale(ScaleGestureDetector detector) {
scaleFactor *= detector.getScaleFactor();
// Don't let the object get too small or too large.
scaleFactor = Math.max(0.1f, Math.min(scaleFactor, 5.0f));
view.invalidate();
return true;
}
}
}
Questions connexes
- 1. Désactiver le pincement zoom Application Android PhoneGap
- 2. Zoom multidirectionnel et pincement
- 3. Zoom et pincement RelativeLayout
- 4. Désactiver le pincement zoom mapsforge
- 5. Gérer le pincement Zoom Gestes
- 6. Pincement de toile zoom android
- 7. Comment activer le pincement et le zoom sur un mobile?
- 8. KineticJS et pincement et zoom
- 9. Comment implémenter le zoom de pincement en android
- 10. GLSurfaceView Zoom (ZOOM DE PINCEMENT)
- 11. pincement et de zoom rapide
- 12. Zoom UICollectionView via le mouvement de pincement
- 13. Limites de disposition d'échelle sur le pincement zoom Android?
- 14. pincement zoom dans Firefox Détection sur android
- 15. Désactiver le pincement de zoom IE10
- 16. UIScrollView zoom d'un point fixe, et désactiver le pincement/sortie
- 17. Pincement et zoom JQuery Mobile iOS
- 18. Uiwebview rafraîchit après zoom et pincement
- 19. Comment tester le geste de pincement dans le simulateur android
- 20. Désactiver le zoom (à la fois le zoom de pincement et le zoom intelligent [mac]) en électron
- 21. balayage avec pincement zoom webview
- 22. Android WebView utilise setWideViewPort, désactive le double-clic sur le zoom, mais conserve le zoom de pincement?
- 23. Un pincement et un zoom chromatiques avant le chargement de DOM bloquent la valeur du zoom
- 24. Désactiver le zoom de pincement dans la bibliothèque MPAndroidChart
- 25. Événements tactiles iPad mais permettent toujours le zoom de pincement
- 26. Comment faire pour zoomer des images de couverture en utilisant le zoom de pincement en android
- 27. Contrôle WPF WebBrowser Désactiver le pincement et le zoom sur le bureau win8
- 28. comment mettre en œuvre le zoom pincement sur un ImageView créé par programme dans Android?
- 29. Possibilité d'utiliser le pincement/zoom iscroll avec des divs superposés?
- 30. Fonction de pincement à zoom pour TiledScrollView
le pincement et de zoom sont reconnus comme – superuser
@superuser glisser Est-ce au lieu d'effectuer un zoom ou avec elle? – Phil
c'est au lieu de zoomer. – superuser