Lacement d'un thread tant que un bouton est enfoncé
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Lacement d'un thread tant que un bouton est enfoncé



  1. #1
    invite9194482e

    Lacement d'un thread tant que un bouton est enfoncé


    ------

    Bonjour;

    Je voudrais exécuter une méthode "goto()" tant que un bouton est enfoncé.

    J'ai essaiyé de lancer un thread lorsque j'appuis longtemps sur bouton mais le thread se lance et continue et s'excécuter lorseque j'enlève mon doigt sur le bouton.
    Je ne sais pas comment faire pour l'arrêter si j'enlève mon doigt sur le bouton.
    Ci dessous le code que j'ai utilisé:

    Boolean flag=true;
    ImageButton devant;
    devant=(ImageButton)findViewBy Id(R.id.avant);
    Boolean flag=true;
    devant.setOnLongClickListener( new OnLongClickListener() {
    @Override
    public boolean onLongClick(View v) {
    // TODO Auto-generated method stub

    new Thread(new Runnable() {
    @Override
    public void run() {
    while(flag){

    try {
    goTo(); // ma méthode que je veux excécuter
    Thread.sleep(3000);
    } catch (RemoteException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }

    }} } }).start();

    return true;
    }

    });



    Merci de vos aides

    -----

  2. #2
    Jack
    Modérateur

    Re : Lacement d'un thread tant que un bouton est enfoncé

    Merci de vos aides
    'Merci de lire les"post-it / sujets à lire" du forum info avant de poster.

    A+

  3. #3
    invite9194482e

    Re : Lacement d'un thread tant que un bouton est enfoncé

    Voila j'ai trouvé la solution

    Il faut appliquer la méthode isPressed() dans la boucle while


    while(devant.isPressed())
    {// faire ce que vous voulez }

    Merci.

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/03/2013, 12h29
  2. Réponses: 3
    Dernier message: 01/08/2009, 20h01
  3. [Blanc] Ouvrir micro-onde brandt - bouton cassé enfoncé[résolu]
    Par invitedd9d7d4d dans le forum Dépannage
    Réponses: 4
    Dernier message: 17/06/2009, 16h00