Gef Posted January 5, 2011 Share Posted January 5, 2011 Bonsoir à tous :) (et Bonne Année) Je suis entrain de développer une application, et je rencontre un petit problème. J'ai un bouton qui déclenche une musique et un autre qui l'arrête. Si j'appuie en boucle sur le bouton lecture, la musique va se jouer autant de fois qu'il y a eu de cliques. Malgré le bouton stop, je ne peux plus arrêter cette lecture en boucle et je dois attendre que ça se termine. Je mets à disposition la partie code qui pose problème Buttonlecture.setOnClickListener(new OnClickListener(){ public void onClick(View viewParam) { mediaPlayer = MediaPlayer.create(Hymnes_UE.this, R.raw.son_à_jouer); mediaPlayer.start(); } }); Buttonstop = new ImageButton(this); Buttonstop.setImageResource(R.drawable.stop); // Buttonstop.setBackgroundResource(R.drawable.ic_menu_close_clear_cancel); Buttonstop.setOnClickListener(new OnClickListener(){ public void onClick(View viewParam) { mediaPlayer.stop(); } }); Avez vous une solution pour empêcher ça ? Merci ;) Link to comment Share on other sites More sharing options...
Alocaly Posted January 5, 2011 Share Posted January 5, 2011 Tu ne peux pas juste avoir une variable MusicOn que tu mets à vrai quand tu joues la musique, et à faux quand tu stoppes la musique. Et tu ne relances pas un start si la variable est déjà à true... Enfin, si j'ai bien compris, c'est ca que je ferais... Emmanuel / Alocaly Link to comment Share on other sites More sharing options...
Femto Posted January 5, 2011 Share Posted January 5, 2011 Faut que tu joue sur un système de flags (drapeaux), avec une variable de type "boolean" par exemple. Du genre: boolean musique_en_marche=false; //si musique pas en marche if( !flag musique_en_marche ){ Je peut appuyer sur le bouton et lancer la musique flag musique_en_marche=true; } quand tu stope ta musique: flag musique_en_marche=false; En gros t'aura beau à appuyer sur le bouton lancer la musique, ça ne marchera pas vu que t'a pas mis le flag à false pour rentrer dans la boucle. J'aurais pu te corriger le code, mais je te laisse l'implémenter pour que tu comprenne bien ;-) Link to comment Share on other sites More sharing options...
Gef Posted January 7, 2011 Author Share Posted January 7, 2011 Merci pour vos réponses. J'ai opté pour la variable et ça marche parfaitement ;) Merci Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.