package com.example.day12_handler;
import java.util.Timer;
import java.util.TimerTask;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
public class MainActivity1 extends Activity {
//主线程
private static TextView tv;
private LooperThread thread;
private int count=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv=(TextView) findViewById(R.id.tv);
thread=new LooperThread();
thread.start();
}
public void onBtnClick(View view){
Timer timer=new Timer();
TimerTask task=new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
Message msg=new Message();
msg.arg1=count++;
thread.mHandler.sendMessage(msg);
}
};
timer.schedule(task, 1000, 1000);
// timer.cancel();
}
class LooperThread extends Thread {
public Handler mHandler; //此时的handler在次线程中 次线程里必须有looper.prepare() 和 looper.loop()方法
public void run() {
Looper.prepare();
mHandler = new Handler() {
//接收消息
public void handleMessage(Message msg) {
// process incoming messages here
int a= msg.arg1;
System.out.println(a+"--------------");
}
};
Looper.loop();
System.out.println("--------------------");
}
}
}
Android中Handler机制
最新推荐文章于 2017-02-15 10:52:51 发布