两个不同的类,如何传递handler参数?顺便讨教下点有关问题。
两个不同的类,怎么传递handler参数?顺便讨教下点问题。。
有点点长。。。
我现在要在非activity的类里面,传递参数给activity那里,但是发觉传不了,这是我的测试代码,
求过路人给点思路。。。
非activity普通类:
activity类:
有点点长。。。
我现在要在非activity的类里面,传递参数给activity那里,但是发觉传不了,这是我的测试代码,
求过路人给点思路。。。
非activity普通类:
public class HandlerTest {
private Handler handler = null;
private MainActivity mainActivity = null;
public HandlerTest(){
}
public void init(){//初始化
mainActivity = MainActivity.getMainActivity();
handler = mainActivity.getHandler();
}
public void sendMsg(){//发送信息
Message msg = new Message();
msg.what = MainActivity.TEST;
handler.sendMessage(msg);
}
}
activity类:
public class MainActivity extends Activity {
public static final int TEST = 0;
private TextView tv = null;
private HandlerTest ht = null;
private Button b = null;
private static MainActivity mainActivity = new MainActivity();
public static MainActivity getMainActivity() {//其实目的是返回本身这个类,想获得里面的控件
return mainActivity;
}
private Handler handler = new Handler(){
public void handleMessage(Message msg){
switch(msg.what){
case TEST:{
Toast.makeText(MainActivity.this, "test handler", Toast.LENGTH_SHORT).show();
tv.setText("hello");
}break;
default:break;
}
}
};
public Handler getHandler() {
return handler;
}
public void setHandler(Handler handler) {
this.handler = handler;
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView)this.findViewById(R.id.TextViewTestID);
b = (Button)this.findViewById(R.id.ButtonTestID);
ht = new HandlerTest();
b.setOnClickListener(new OnClickListener() {