我从android开发开始,我遇到了使用处理程序的问题。 我有:
我想从线程中显示一个toast,但如果不使用处理程序,这是不可能的。我做了很多研究,但我真的不能理解处理程序的概念。
这是我的代码:
活动:
public class ActiviteDessin extends Activity {
/* Classe d'échanges */
Serveur serveur;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
view = new MySurface(this);
setContentView(view);
this.serveur = new Serveur(this, this.view);
}
@Override
protected void onStart() {
super.onStart();
}
}
Serveur.java:
public class Serveur {
Context context;
MySurface viewServeur;
public Serveur(Context pContext, MySurface pView) {
this.context = pContext;
this.viewServeur = pView;
/* On initialise et lance le thread socket de connexion */
this.lanceSocketConnexion();
}
/** Méthode permettant de lancer le socket de connexion */
public void lanceSocketConnexion() {
/* On initialise et lance le thread socket de connexion */
this.socketServeur = new SocketServeur();
this.socketServeur.start();
}
/** Classe socket du serveur */
public class SocketServeur extends Thread {
@Override public void run() {
// I WANT TRIGGER MY TOAST HERE
}
}
}
所以,我想在我的线程中触发我的Toast,它本身就在我的班级“Serveur”中,我不知道如何使用处理程序执行此操作,但我阅读了很多教程......
事实上,我不明白我必须在哪里声明我的处理程序(在我的Activity或Serveur.class中)等...
除了给我一个答案(我希望:p),有人可以一步一步向我解释它是如何工作的吗?
如果我提出一个对你来说显而易见的问题,请提前感谢,对不起。
PS:对不起我的英文:/