2010-11-30 29 views
0

Je travaille actuellement sur une application pour Android et j'utilise Eclipse et bien sûr Android SDK, mais j'ai rencontré un problème qui est presque la seule chose que j'ai besoin de réparer Donc, mon problème est que j'ai un xml avec 4 boutons différents, et si l'utilisateur appuie sur un certain bouton, un son sera joué, et si le utilisateur presse l'un des autres boutons est pressé un autre son va jouer, mais le son ne joue parfois, je veux jouer chaque fois que la presse utilisateur un bouton Voici mon code (en ce qui concerne le mediaplayer):.Jouer du son sur tous les boutons (Android =

public MediaPlayer right=null; 
    public MediaPlayer wrong=null; 

    if(right!=null) { 
     right.reset(); 
     right.release(); 
    } 
    if(wrong!=null) { 
     wrong.reset(); 
      wrong.release(); 
    } 
    right = MediaPlayer.create(getBaseContext(), R.raw.rightsound); 
    wrong = MediaPlayer.create(getBaseContext(), R.raw.wrongsound); 
    if(****()){ 
     right.start(); 
    } 
    else { 
    wrong.start(); 
} 

C'est mon code et je serais très reconnaissant si quelqu'un pouvait m'aider à résoudre mon problème.

+0

Y a-t-il un motif à jouer ou non? –

+0

Non, pas vraiment. Mais si j'attends quelques secondes pour appuyer sur un bouton, cela fonctionne plus souvent que si j'appuie rapidement. – Christoffer

Répondre

2
new Thread() { 
    public void run() { 
     int sound = R.raw.wrongsound; 
     if(****()) { 
      sound = R.raw.rightsound; 
     } 
     mp = MediaPlayer.create(Test.this, sound); 
     mp.setOnCompletionListener(new OnCompletionListener() { 
      @Override 
      public void onCompletion(MediaPlayer mp) { 
       mp.release(); 
      } 
     }); 
     mp.start(); 
    } 
}.start();