Question

Je veux créer un événement pour changer ce que mon apparence bouton d'image comme, mais seulement quand il est poussé vers le bas. Jusqu'à présent, je suis un auditeur à l'aide OnTouch, mais tout change en permanence. Je ne peux pas trouver quelque chose comme un type de chose pour le bouton onKyeUpListener ().

quoi que ce soit fait comme ce exist?

RESOLU

    final ImageButton button = (ImageButton) findViewById(R.id.ImageButton01);

    button.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {

            if(event.getAction() == (MotionEvent.ACTION_UP)){
                //Do whatever you want after press
            }
            else{
                //Do whatever you want during press
            }
            return true;
        }
    });
Était-ce utile?

La solution

De http://developer.android.com/guide/topics /ui/ui-events.html :

  

OnTouch () ... Ceci est appelé lorsque l'utilisateur effectue une action qualifiée comme un événement tactile, comprenant une presse, une libération, ou de tout geste de mouvement à l'écran (dans les limites de l'objet).

En d'autres termes, onTouch est également appelé à des événements de libération. Regardez MotionEvent.getAction().

Autres conseils

Il est dans le docs . Vous pouvez définir des images différentes pour les différents états via XML.

Au lieu de le faire manuellement, pourquoi ne pas changer le drawable de vos boutons? En général, dessinables peut avoir plusieurs états, donc si vous changez le drawable pour certains états (comme concentré ou sélectionné), le système d'exploitation se chargera de tout pour vous automatiquement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top