Gestionnaire d'.postDelayed(...) ne pas retarder l'Exécutable
j'ai mis en place un OnCompletionListener par moi-même ce qui ressemble à ceci:
public class SongEndCompletionListener implements OnCompletionListener{
String nextView;
Context actualActivity;
int stopTime;
public SongEndCompletionListener(Context activity, String nextView, int time) {
this.nextView = nextView;
actualActivity = activity;
}
@Override
public void onCompletion(MediaPlayer arg0) {
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {
try {
Intent stopplay;
stopplay = new Intent(actualActivity,Class.forName(nextView));
actualActivity.startActivity(stopplay);
} catch (ClassNotFoundException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
}
}, stopTime);
}
}
Je veux la pause de stopTime secondes, mais ce qu'il fait réellement dès que l'audiofile se termine, il saute à la vue suivante.
Pourriez-vous peut-être me diriger vers l'endroit où je me trompe ou comment je pourrait retarder le passer à une autre Activité différemment?
Chaque indicateur est apprécié!
La commutation des activités n'est pas le problème, cela fonctionne bien. Il permet simplement de l'activité lors de la "chanson" est terminé, et pas stopTime millisecondes après qu'il a cessé de jouer.
OriginalL'auteur Kazoooka | 2013-08-26
Vous devez vous connecter pour publier un commentaire.
Je sais pourquoi votre Gestionnaire de ne pas publier de retard.
Vous devez définir une valeur pour "stopTime", sinon il sera de 0.
Par exemple, pour retarder le Praticable pendant une seconde:
Ou de l'utilisation de votre Constructeur:
OriginalL'auteur Philipp Jahoda