Я создаю деку в виде списка, и мне нужен код для воспроизведения звука, когда я нажимаю на элемент, и останавливаю его, когда нажимается другой, а затем запускаю новый звук. Я пробовал много кода, но приложение вылетает.
Медиаплеер Android останавливает звук при нажатии на другой элемент
Ответы (2)
private MediaPlayer mMediaPlayer = null;
Вызовите playAudio() при нажатии элемента. он остановит предыдущее воспроизведение звука и воспроизведет новый.
public void playAudio(int audioId)
{
// stop the previous playing audio
if(mMediaPlayer != null && mMediaPlayer.isPlaying())
{
mMediaPlayer.stop();
mMediaPlayer.release();
mMediaPlayer = null;
}
mMediaPlayer = MediaPlayer.create(this, audioId);
mMediaPlayer.start();
}
вызовите этот метод при щелчке элемента
playAudio(R.raw.sound); // change this sound depends on your item
person
Libin
schedule
25.03.2014
Поместите медиафайл в папку raw, а затем
MediaPlayer song = MediaPlayer.create(this, R.raw.song1);
и когда вы нажимаете на элемент в своем спискеView
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
song.release();
song = MediaPlayer.create(this, R.raw.song2);
song.start();
}
person
wael
schedule
25.03.2014
Я знаю, как запустить звук, но мне нужно, когда я нажимаю на другой элемент, прежний останавливается и начинается новый.
- person user3437592; 25.03.2014