私のアプリケーションには 4 つの ToggleButtons があります。それらはすべて、アプリでサウンドをループさせるためのものです。つまり、最初に ToggleButoon をクリックしてその状態が on になると、音楽の再生が開始され、その状態がONになるまでループし続けます。残りのトグルボタンと同じです。それらは同時に (すべて)オンになる可能性があるため、4 つのメディアプレーヤーをループさせる予定です。
これが最初の ToggleButton のコードの平和です。これまでのところ、1 つでも運がありません....
public MediaPlayer resourcePlayer;
Context appContext = getApplicationContext();
resourcePlayer = MediaPlayer.create(appContext,R.raw.loop1);
.....
.....
public void onClick (View v){
switch (v.getId()) {
case R.id.toggleButton1:
boolean on = ((ToggleButton) v).isChecked();
if (on) {
resourcePlayer.start();
resourcePlayer.setLooping(true)
}
else {
resourcePlayer.stop();
}
break;
}
ToggleButton をクリックしても何も起こらず、電話で状態が変化しているだけで、LogCat もclearです。ありがとう )
UPD1: 現在はループしていますが、状態を変更しても停止せず、ループし続けます。
UPD2: resourcePlayer はメイン アクティビティのパブリックです
UPD3: 重複を作成しないように、MediaPlayer 変数を onCreate メソッドに取り出しました。再生して停止しますが、その後初めて Logcat にエラー メッセージが表示されます
MediaPlayer start called in state 0
....
....
MediaPlayer stop called in state 0