l'ajout de toucher l'auditeur pour le revêtement de mise en page remplie avec des boutons
J'ai ajouté une touche à un évènement linéaire disposition pour répondre à des gestes de balayage, et il fonctionne bien. Cependant, quand j'ai ajouter des boutons à la mise en page, le parent liner mise en page est ignoré. Comment dois-je éviter cela?
LinearLayout ln2 = (LinearLayout) findViewById(R.id.fr2);
ln2.setOnTouchListener(swipe);
Comment puis-je utiliser onInterceptTouch
?
OriginalL'auteur Evans Kakpovi | 2012-05-05
Vous devez vous connecter pour publier un commentaire.
Vous devez créer votre propre mise en page et remplacer onInterceptTouchEvent(MotionEvent ev) méthode de votre mise en page.
Par Exemple, j'ai créé ma propre mise en page qui s'étend RelativeLayout
Et quand j'ai mis un bouton de ma forme, j'ai cliqué sur ce bouton, Ma Mise en page consomme tous les touchEvent en raison de la
onInterceptTouchEvent
retourne toujours true.Espérons que cela devrait vous aider à
je n'ai pas été en mesure de comprendre comment remplacer onInterceptTouchEvent dans mon code. ai-je besoin de le faire pour chaque bouton, ou tout simplement le parent de mise en page?
Vous devriez le faire juste pour le parent de mise en page. Si vous pouvez attendre une demi-heure, je peux modifier ma réponse. J'ai besoin d'aller travailler dès maintenant
votre réponse a été vraiment utile, sauf que je ne peux pas comprendre comment ajouter le remplacement de mon code d'activité. si possible, u peut me montrer comment le code ci-dessus va travailler avec mon activité de classe? merci.
J'ai ajouté personnalisé viewgroup de mon fichier xml, et a ajouté l'touchlister. J'ai utilisé l'idée de code.google.com/p/rxwen-blog-stuff/source/browse/trunk/android/.... Il fonctionne très bien maintenant. merci pour toute l'aide.
OriginalL'auteur Murat Nafiz
Ajouter android:onClick="tapEvent" dans votre mise en page dont vous souhaitez utiliser le clic.
En changeant la MAX_TAP_COUNT valeur, vous pouvez utiliser n'importe quel nombre de robinets.
OriginalL'auteur Akshay Kumar S