Android中Handler机制
16lz
2021-12-04
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;@Overrideprotected 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() {@Overridepublic 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(安卓)动态发送广播接收
- android开启线程的误区
- Android之进程与线程
- Android(安卓)内存优化
- Android使用Thread+Handler实现非UI线程更新界面
- Android之AsyncTask异步任务详解总结
- Android之——多线程断点续传下载示例
- Android进程与线程基本知识
- Android之进程与线程