Im Moment habe ich zwei Tasten. Jeder muss einen anderen Klang erzeugen. In der Zukunft wird es wahrscheinlich ungefähr 8 Knöpfe geben, aber im Moment nur zwei.effizienteste Weise, einen Ton zu spielen, wenn Knopf geklickt wird
public class MyActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final Button btnDrum1 = (Button) findViewById(R.id.btnDrum1);
btnDrum1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
MediaPlayer mp = MediaPlayer.create(this, R.raw.drum1);
mp.start();
mp.release();
}
});
final Button btnCym1 = (Button) findViewById(R.id.btnCym1);
btnCym1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
MediaPlayer mp = MediaPlayer.create(this, R.raw.cym1);
mp.start();
mp.release();
}
});
}
}
Ursprünglich habe ich nicht mp.release() und es würde den Ton richtig, aber schließlich die App spielen würde abstürzen aufgrund der Speicher ausgeht. Jetzt mit dem mp.release() stürzt es nicht ab, aber manchmal spielt es den Ton nicht, wenn er geklickt wird.
Ist dies die effizienteste Art, einen Sound zu spielen, wenn auf die Schaltfläche geklickt wird? Ist es erweiterbar?
Was du beschreibst scheint sinnvoll zu sein, aber ich bin ein wenig unsicher über die beste Möglichkeit, das zu implementieren. – Bromide
dort habe ich in einer Implementierung bearbeitet. Vergewissere dich einfach, was ich getan habe, damit du es auch in anderen Situationen verwenden kannst :) – pgsandstrom