Affichage Toast message à partir d'un Thread
Mon application lance un thread pour interroger le web pour certaines données. Je veux afficher un Toast message quand on ne trouve rien, mais mon application se bloque toujours.
J'ai essayé d'utiliser le Contexte de l'application depuis le thread, comme suit:
Toast.makeText(getApplicationContext(), "testttt", Toast.LENGTH_LONG).show();
J'ai aussi essayé de créer un Exécutable avec le Toast d'appel et de l'appel de runOnUiThread(runnable) à partir du Thread (le Toast d'appel dans cet exécutable utilise l'Activité en tant que premier paramètre).
Quelqu'un a une idée sur la façon d'accomplir ceci?
Êtes-vous à l'aide de
Pour le moment je suis en utilisant une classe, j'ai étendu à partir du Fil. Il est probable que je vais la déplacer dans un AsyncTask à un certain point. Je n'en ai pas fait encore.
Thread
intérieur de la classe ou êtes-vous étendre AsyncTask
dans un cadre totalement distincte de la classe?Pour le moment je suis en utilisant une classe, j'ai étendu à partir du Fil. Il est probable que je vais la déplacer dans un AsyncTask à un certain point. Je n'en ai pas fait encore.
OriginalL'auteur Andrew | 2010-11-17
Vous devez vous connecter pour publier un commentaire.
Essayer de poster à l'intérieur d'un Gestionnaire d'objet.
OriginalL'auteur davidcesarino
Toast.makeText().show()
sans aucun doute, doit être exécuté sur le thread de l'INTERFACE utilisateur.Vous devriez probablement utiliser une AsyncTask comme Octave Damiean mentionné, mais voici un peu de code à l'aide de runOnUiThread si vous êtes fixés sur l'utilisation qui:
Post la trace de la pile dans votre post original.
dans le code ci-dessus le premier paramètre "ce" est probablement incorrect, vous avez besoin pour passer un contexte valide explicitement, f.j'. votre ProgressDialog.getContent()
OriginalL'auteur Brandon O'Rourke
Essayer de mettre en œuvre une classe étendant "Gestionnaire" dans votre classe d'Activité et d'envoyer un Message à partir de l'autre thread. Expliqué plus en détail ici:
http://www.anddev.org/the_pizza_timer_-_threading-drawing_on_canvas-t126.html
Et s'il vous plaît, quand vous posez une question comme celle-ci, comprennent la trace de la pile.
OriginalL'auteur Fredrik Wallenius
Si vous utilisez le Gestionnaire de votre classe d'Activité, vous pouvez définir le contexte par juste le référencement .ce de votre Activité comme suit:
OriginalL'auteur Chuck D