在UI的主线程类中,如某个TestActivity
private static final int MSG_TEST = 0;
//定义handler在主线程上要做的某些事
Handler mHandler = new Handler(){
public void handleMessage(Message msg){
switch(msg){
case:MSG_TEST: do something;break;
}
}
};
//定义类型
public void HandlerTest(){
Message msg = mHandler.obtainMessage(MSG_TEST);
//msg也可以绑定一些Bundle数据;
mHandler.sendMessage(msg);
}
//在其他的某个类调用
class OtherClass{
TestActivity ta = new TestActivity();
ta.HandlerTest();
}
hanlder作为Activity的变量,在初始化时new一个。
然后要用的地方,就使用它发送消息就行了。
这个是内部类(匿名类),写在类内的任何地方。
你也可以扩展Handle 来写一个新的类