Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Android Studio - zastavení zvuku

Zdravím, zkoušel jsem vyrábět aplikaci, co bude dělat zvuky. Vše funguje, ale chtěl bych udělat, aby při zapnutí jiného zvuku se ten první vypnul, a také bych chtěl přidat tlačítko na zastavení zvuku. Poradil by někdo jak? Děkuji.

Main Activity:

public class MainActivity extends AppCompatActivity implements View.OnClickListener{
MediaPlayer player;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button sound1 = findViewById(R.id.sound1);
Button sound2 = findViewById(R.id.sound2);
Button sound3 = findViewById(R.id.sound3);
Button sound4 = findViewById(R.id.sound4);
Button sound5 = findViewById(R.id.sound5);
Button sound6 = findViewById(R.id.sound6);
Button stop = findViewById(R.id.stop);
sound1.setOnClickListener(this);
sound2.setOnClickListener(this);
sound3.setOnClickListener(this);
sound4.setOnClickListener(this);
sound5.setOnClickListener(this);
sound6.setOnClickListener(this);
stop.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.sound1:
player = MediaPlayer.create(this, R.raw.anthem);
break;
case R.id.sound2:
player = MediaPlayer.create(this, R.raw.anthem_metal);
break;
case R.id.sound3:
player = MediaPlayer.create(this, R.raw.katyusha);
break;
case R.id.sound4:
player = MediaPlayer.create(this, R.raw.katyusha_rock);
break;
case R.id.sound5:
player = MediaPlayer.create(this, R.raw.kalinka);
break;
case R.id.sound6:
player = MediaPlayer.create(this, R.raw.kalinka_mix);
break;
}
player.stop();
player.start();
}
}

Předmět Autor Datum
Mělo by pomoci zavolat player.stop();. Jednoduše toto zavoláš pro přerušení stávajícího zvuku.
Flash_Gordon 25.04.2018 15:32
Flash_Gordon
Možná není uplně vhodné dělat instance mediaplayeru pro každý zvuk alternativy: opačně: mít 1 mediap… poslední
fusek 25.04.2018 23:25
fusek

Možná není uplně vhodné dělat instance mediaplayeru pro každý zvuk
alternativy:
opačně: mít 1 mediaplayer a do něj pokaždé nahrát nový zvuk
"inkrementálně" při pokusu o přehrání daného zvuku vytvořit mediaplayer, nebyl-li pro tento player již vytvořen dříve

Zpět do poradny Odpovědět na původní otázku Nahoru