Aller au contenu

Plusieurs progressDialog dans des Thread


blubsy

Recommended Posts

Bonjour,

j'utilise des Thread pour lancer des ProgressDialog.

Hors les Thread sont lancer automatiquement lorsqu'un Sms est reçut.

Dans le principe tous ce passe bien.

Mais lorsque 2 (voir pus) de message arrive en même temps et donc plusieurs ProgressDialog sont lancer quasi en même temps, seul le dernier lancer est fermé.

Il reste donc un ProgressDialog qui reste ouvert.

Comment puis je vérifié si le ProgressDialog est fermé ou donné un identifiant pour ouvrir et fermé les ProgressDialog ?

Merci par avance pour votre aide.

	public void launchWait(String action) {

	progressDialog = ProgressDialog.show(this, "Patientez...", $messg, true, false);

new Thread(new Runnable() {
		@Override
		public void run() {

                             // Action
                             //...

                             // Fermeture du ProgressDialog
                             progressDialog.dismiss();


		}).start();	

}

Lien vers le commentaire
Partager sur d’autres sites

Vu comment tu as déclaré ProcessDialog, c'est le même objet pour chaque Thread fille. Elles vont essayer de fermer le même processDialog.

thread1.start() -> processDialog = dialog1
thread2.start() -> processDialog= dialog2

thread1.stop() -> dialog2.dismiss()
thread2.stop() -> dialog2.dismiss()

l'adresse de dialog1 a été écrasée par dialog2, mais dialog1 est toujours en vie dans la mémoire, en train d'afficher. Peut etre mieux déclarer un nouveau process dialog dans ton run().

public void run(){

ProcessDialog pd = ProcessDialoge.show() //il existe que dans le contexte du thread actuel

...

pd.dismisss();

}

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...