Media Player Play\Pause

Ответить
nohchiadam
Сообщения: 1
Зарегистрирован: 21 ноя 2018, 14:03

Media Player Play\Pause

Сообщение nohchiadam » 21 ноя 2018, 14:06

На одной activity несколько блоков (около 10) текста и под каждым блоком звук, который воспроизводятся при нажатии на Play.

Нажатие на кнопку Play начинает воспроизведение звука и меняет кнопку Play на Pause.При завершении воспроизведении кнопка Play возвращается.

Проблема:

Если еще ДО завершения предыдущего звука, нажать на воспроизведение второго то кнопка Pause у первого звука не сменяется на Play.Просто зависает, но сама кнопка работает, зависает само состояние кнопки.

Можно ли как то отследить прерывание звука и при прерывании менять кнопку Pause на Play ?

Код:

Код: Выделить всё

   @Override
public void onClick(View v) {

    switch (v.getId()) {

        case R.id.play1:


            if  (!answerAboutPlay){
                stopPlaying();

                mp = MediaPlayer.create(summer.this, R.raw.summerplay1);
                mp.start();
                answerAboutPlay = true;
                summerplay1.setBackgroundResource(R.drawable.pause_light);
            }
            else
            {

                mp.pause();
                answerAboutPlay = false;
                summerplay1.setBackgroundResource(R.drawable.play_light);
            }
            mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
                public void onCompletion(MediaPlayer mp) {
                    summerplay1.setBackgroundResource(R.drawable.play_light);
                    answerAboutPlay = false;
                }
            });

Ответить