Bonjour à tous,
Voila je n'avez pas assez de place pour mieux expliciter mon problème dans le sujet...
J'ai créer un petit programme qui crée en xml un LinearLayout auquel j'ajoute au fil du temps des notification (ex: "Bienvenu","connexion ok","erreur",...)
Tout cela marche très bien jusqu'à se que je mette en place une ServerSocket :
En effet si je notifie "Connexion Ok" aprer le
Mon programme plante et éclipse me parle de :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Socket clientSocket = serverSocket.accept();
Exeption ViewRoot$CalledFromWrongThreadExeption
J'ai exactement le même problème lorsque je remplace l'accept() par :
Mon programme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part sleep(2500);
Class principale
Thread Serveur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 public class Sbc extends Activity { LinearLayout Notification_list; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Notification_list = (LinearLayout) findViewById(R.id.Notification_list); notif("coucou");// MARCHE ! } public void notif(String txt) { TextView notif = new TextView(Notification_list); notif.setText(txt); Notification_list.addView(notif); } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 public class Serveur extends Thread { LinearLayout Notification_list; Serveur(LinearLayout l) { Notification_list = l; notif("Wooo sa marche"); //MARCHE sleep(2500); notif(" :-( "); // Sa Plante ! } public void notif(String txt) { TextView notif = new TextView(Notification_list); notif.setText(txt); Notification_list.addView(notif); } }
Toutes les idée son bonne à prendre.
Par avance merci !
![]()
Partager