Come si usa il listener di OnCompletion per un po 'di musica? Vorrei premere un pulsante per andare a un'altra attività che riproduce un po 'di musica e poi torna indietro al termine della riproduzione della musica. Ho già codificato l'altra roba. Non riesco a capire come usare il listener di OnCompletion?OnCompletion listener con MediaPlayer
16
A
risposta
32
Si dovrebbe mettere il codice che deve essere eseguito quando la musica viene completata nel OnCompletionListener
, ad esempio:
mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
finish(); // finish current activity
}
});
6
mPlayer.setOnErrorListener(new OnErrorListener() {
public boolean onError(MediaPlayer paramMediaPlayer, int paramInt1,int paramInt2) {
// TODO Auto-generated method stub
//your code if any error occurs while playing even you can show an alert to user
return true;
}
});
mPlayer.setOnCompletionListener(new OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
// TODO Auto-generated method stub
//your code if the file was completely played either show an alert to user or start another activity or file.
//even you can finish you activity here
}
});
4
Trovo che sopra sono esatte però stavo lottando su dove posizionare il codice. Vedi sotto, inserisco questo codice dopo il mio codice per avviare la melodia!
playButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mediaPlayer.start(); //Next line is the beginning of where to place the code.
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
Toast.makeText(MainActivity.this, "I'm Finished", Toast.LENGTH_SHORT).show();
}
});
}
});
Soluzione perfetta, ha funzionato per me – Pitto
Grazie mille !!! Ha funzionato :) –