Я новичок в Android Studio (программирование в целом), но я хочу создать медиаплеер для учебных целей.
У меня есть список местной музыки в listView, который содержит 2 изображения «кнопка воспроизведения, паузы и остановки».
Вот как работает мое приложение:
- Нажмите на кнопку воспроизведения -> начать музыку
- Нажмите на кнопку паузы -> пауза музыки
- Нажмите на кнопку остановки -> остановить музыку
Очень просто. НО! дело в том -> когда я приостанавливаю песню и хочу воспроизвести другую песню в моем списке, она просто возобновляет первую песню, на которую я нажал.
Я хочу, чтобы она выпустила первую песню и запустила другую, на которую я нажал.
Это мой код:
// play music
viewHolder.playB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (flag) {
//get song you clicked on
mediaPlayer = MediaPlayer.create(context, song.getSong());
//set boolean to false so it can get ANOTHER song when
//clicked
flag = false;
Toast.makeText(context, "Playing" + song.getName(),
Toast.LENGTH_LONG).show();
}
if (mediaPlayer.isPlaying()) {
mediaPlayer.pause();
viewHolder.playB.setImageResource(R.drawable.play);
} else {
mediaPlayer.start();
viewHolder.playB.setImageResource(R.drawable.pause);
}
}
});
// stop
viewHolder.stopB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!flag) {
mediaPlayer.stop();
mediaPlayer.release();
flag = true;
}
viewHolder.playB.setImageResource(R.drawable.play);
}
});