Элементы управления воспроизведением Android VideoView Показывают «Играть» сначала вместо «Пауза», даже если файл уже воспроизводится

Добрый день / утро! Надеясь, что кто-то может помочь мне с небольшой проблемой, которую я испытываю. Я играю в удаленный файл .mp3, используя VideoView и пользовательский MediaController .

Мой MediaController выглядит так:

 public class MyMediaController extends MediaController { public MyMediaController(Context context) { super(context); } // Do nothing on the overridden hide method so the playback controls will never go away. @Override public void hide() { } // Override the dispatchKeyEvent function to capture the back KeyEvent and tell the activity to finish. @Override public boolean dispatchKeyEvent(KeyEvent event) { if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) { ((Activity) getContext()).finish(); } return super.dispatchKeyEvent(event); } 

}

И мой код, чтобы прикрепить его к моему VideoView выглядит так:

  VideoView videoView = (VideoView) findViewById(R.id.VideoView); // Use our own media controller, which inherits from the standard one. Do this to keep // playback controls from disappearing. mediaController = new MyMediaController(this); mediaController.setAnchorView(videoView); Uri video = Uri.parse(URL); videoView.setMediaController(mediaController); videoView.setVideoURI(video); // Set a handler that will show the playback controls as soon as audio starts. videoView.setOnPreparedListener(new OnPreparedListener() { @Override public void onPrepared(MediaPlayer arg0) { mediaController.show(); } }); videoView.start(); 

Проблема, с которой я сталкиваюсь, заключается в том, что когда файл .mp3 начинает играть, панель управления внизу имеет кнопку «Воспроизвести», отображающую (т. Е. Треугольник) вместо кнопки «Пауза» (две параллельные полосы), даже если звук Уже играет. Кто-нибудь знает, как это исправить?

EDIT 1:

Меня также интересуют любые другие решения для воспроизведения удаленного .mp3. Единственное, что у меня есть, это то, что пользователь может приостановить / воспроизвести аудио, а также посмотреть, что такое имя аудиофайла (названия).

Спасибо!

Попробуйте это: он решил проблему для меня.

 mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { mp.start(); mMediaController.show(); } }); 

Просто:

 @Override public void onPrepared(MediaPlayer arg0) { if (mediaController.isShowing==false) {mediaController.show();} }