Hallo,
damit mein Code übersichtlicher wird, habe ich eine Soundklasse geschrieben, wo alle meine Sounds aufgelistet werden sollen.
Sie sieht so aus:
Also echt nichts großartiges. Trotzdem scheint stopSound nicht zu funktionieren.
Ausgeführt wird der Code wie folgt:
Also es passiert einfach gar nichts. Der Sound läuft weiter, obwohl er stoppen sollte. Die If-Bedingung wird ausgeführt, was ich mittels eines System.out.println() getestet habe, allerdings ist das jetzt hier nicht drin.
Ich denke, ich übersehe irgendetwas grundlegendes? Iwie glaube ich, das Programm weiß gar nicht welchen Sound es stoppen soll. Jemand eine Idee?
damit mein Code übersichtlicher wird, habe ich eine Soundklasse geschrieben, wo alle meine Sounds aufgelistet werden sollen.
Sie sieht so aus:
Java:
public class SoundPlayer {
public void playSound(Context context, int soundID){
MediaPlayer mp = MediaPlayer.create(context, soundID);
mp.start();
}
public void stopSound(Context context, int soundID) {
MediaPlayer mp = MediaPlayer.create(context, soundID);
mp.stop();
}
Ausgeführt wird der Code wie folgt:
Code:
public class Question extends Activity {
SoundPlayer sp;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_question);
sp = new SoundPlayer();
}
private class TimeToQuestionBegin implements Runnable {
@Override
public void run() {
sp.playSound(getApplicationContext(), R.raw.race);
if (end) {
sp.stopSound(getApplicationContext(), R.raw.race);
}
}
}
}
Also es passiert einfach gar nichts. Der Sound läuft weiter, obwohl er stoppen sollte. Die If-Bedingung wird ausgeführt, was ich mittels eines System.out.println() getestet habe, allerdings ist das jetzt hier nicht drin.
Ich denke, ich übersehe irgendetwas grundlegendes? Iwie glaube ich, das Programm weiß gar nicht welchen Sound es stoppen soll. Jemand eine Idee?