2013-02-16 7 views
0

J'ai un textview avec l'image à ce sujet, je veux alors que l'utilisation de touche le textview l'image changera et quand la finition en utilisant de toucher l'image deviendra à l'ancienne image, je l'ai essayé comme çaandroid MotionEvent pour le fini de toucher

tv_addToBasket.setOnTouchListener(new OnTouchListener() { 

      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       // TODO Auto-generated method stub 
       if (event.getAction() == MotionEvent.ACTION_DOWN) { 
        tv_addToBasket.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.favorite, 0, 0); 
       } 
       return false; 
      } 
     }); 

mais je ne savais pas quel est le MotionEven pour quitter le contact que je veux dire quand la finition à l'aide de toucher

+0

Avez-vous essayé d'utiliser la liste d'états dessinable? http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList modifier - pour répondre à la question touche même, lorsque l'utilisateur arrête de vous toucher obtiendrez un événement MotionEvent.ACTION_UP. (Rappelez-vous d'utiliser le masque d'événement de mouvement en les comparant) –

+0

ce site n'est pas autorisé ici – user2059935

+0

je préfère s'il y a un MotionEven, c'est plus facile – user2059935

Répondre

3

S'il vous plaît voir si ce qui suit permet de résoudre votre problème (de la mémoire, n'ont pas essayé de compiler ce code) -

if ((event.getAction() & MotionEvent.ACTION_MASK) == MotionEvent.ACTION_DOWN) { 
//down 
} 
else if ((event.getAction() & MotionEvent.ACTION_MASK) == MotionEvent.ACTION_UP) { 
//up 
} 

Vous pouvez également utiliser event.getActionMasked() à partir de certains niveaux de l'API.

+0

encore toujours le même, juste au moment où je touche le textview le changement d'image, mais quand je laisse le toucher ne revient – user2059935

+0

Il est très probable parce que la vue consommé l'événement tactile. que se passe-t-il lorsque vous revenez vrai dans votre ontouch personnalisé? –

+0

vous êtes Enshtine d'Android, quand je retourne vrai, cela fonctionne thaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak – user2059935

Questions connexes