2017-07-05 1 views
1

Je suis confronté au problème en jouant le même son après avoir terminé l'audio. Dans mon cas, j'utilise la fonction play et pause dans un seul bouton. Lorsque mediaplayer est en train de jouer, l'icône de pause est visible, quand l'audio est en pause, l'icône de lecture est visible. Mon problème est après que l'audio soit fini palying l'audio, la barre de recherche mediaplayer devrait être au point de départ. Comment puis-je faire ceci.Comment lire l'audio à nouveau après avoir terminé l'audio?

J'ai essayé mediaPlayer.setLooping(true); mais après avoir terminé l'audio, il redémarre mais l'icône de pause est visible et l'audio est en continu.

aussi j'ai essayé `

mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 
     @Override 
     public void onCompletion(MediaPlayer mediaPlayer) { 
     //  mediaPlayer.seekTo((int) startTime); 
      stop.setVisibility(View.GONE); 
      play.setVisibility(View.VISIBLE); 
      seekBar.setProgress((int) startTime); 
     } 
    }); 

Dans cette méthode, il montre que le MediaPlayer terminé état.

Mon besoin est après avoir terminé l'audio le mediaplayer devrait être dans l'état initial et en état de pause. Si l'audio est en pause signifie que l'icône de lecture devrait être visible. Dans l'image ci-dessus pendant la lecture de l'audio, l'image de pause est visible, tandis qu'en mode de pause, l'icône de lecture sera visible. Lorsque l'audio est terminé, la position de la barre de recherche doit être au point de départ et l'audio doit être en pause. Comment faire cela, s'il vous plaît aidez-moi.

+0

le même exemple donné [ici] (http://www.androidhive.info/2012/03/android-building-audio-player-tutorial/) et son fonctionnement ne pose aucun problème. Vous devez cliquer sur répéter l'option de chanson pour qu'il joue automatiquement la même chanson. –

+0

@ Andy développeur je l'ai résolu –

Répondre

1
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 
       @Override 
       public void onCompletion(MediaPlayer mediaPlayer) { 
        //  mediaPlayer.seekTo((int) startTime); 
    //    stop.setVisibility(View.GONE); 
    //    play.setVisibility(View.VISIBLE); 
    //    seekBar.setProgress((int) startTime); 

        seekBar.setProgress(0); 

        if (mediaPlayer.isPlaying()){ 
         stop.setVisibility(View.VISIBLE); 
         play.setVisibility(View.GONE); 
        }else { 
         stop.setVisibility(View.GONE); 
         play.setVisibility(View.VISIBLE); 
        } 
       } 
      }); 

J'espère que cela vous sera utile ..!

+0

La position seekbar est pas changé, la position seekbar est en fin de chanson –

+0

@ Sanjay Chauhan je vais accepter votre besoin de changer le code –

+0

@ Sanjay Chauhan vous devriez changer ce seekBar.setProgress (0) –