在工作线程(WorkerThread)中使用Handler
来源:互联网 发布:农业财政支出数据 编辑:程序博客网 时间:2024/05/17 07:36
方法一:
package com.h3c.test;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.Looper;import android.os.Message;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class HandlerTestActivity extends Activity { Button btn; Handler mHandler; LooperThread thread; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btn = (Button) findViewById(R.id.btn); thread = new LooperThread(); thread.start(); btn.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { Log.e("H3c", mHandler + "=="); if (mHandler != null) { mHandler.sendEmptyMessage(6); } } }); } class LooperThread extends Thread { @Override public void run() { super.run(); Looper.prepare(); mHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); Log.e("H3c", msg.what + "="); } }; Looper.loop(); } }}
方法二:
package com.h3c.test;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.HandlerThread;import android.os.Looper;import android.os.Message;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class HandlerTestActivity extends Activity { Button btn; MyHandler mHandler; HandlerThread thread; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btn = (Button) findViewById(R.id.btn); thread = new HandlerThread("test_h3c"); thread.start(); mHandler = new MyHandler(thread.getLooper()); Log.e("H3c", "1:" + Thread.currentThread().getName()); btn.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { mHandler.sendEmptyMessage(4); } }); } class MyHandler extends Handler { public MyHandler(Looper looper) { super(looper); } @Override public void handleMessage(Message msg) { super.handleMessage(msg); Log.e("H3c", Thread.currentThread().getName() + "=" + msg.what); } }}
- 在工作线程(WorkerThread)中使用Handler
- 在工作线程(WorkerThread)中使用Handler
- 利用Handler在WorkerThread中使用Looper
- 【Android】在线程中使用Handler
- Android Handler/Looper/MessageQueue 在新线程中使用Handler
- 使用Handler在子线程中更新UI
- 使用Handler在子线程中更新UI
- 使用Handler在子线程中更新UI
- 使用Handler在子线程中更新UI
- 在异步线程中使用主线程的handler
- 使用Handler在子线程中更新UI
- Handler - Get message from WorkerThread
- 【Handler】在Android中使用Handler和Thread线程执行后台操作
- WorkerThread
- WorkerThread
- WorkerThread
- Handler 在线程中处理进度条
- 如何在子线程中创建Handler?
- C++中二进制、八进制、十六进制表示方法
- javascript 对象和数组理论篇
- 数据结构知识整理(三)——排序
- 写在集训后期的话
- HDU 3761 Jungle Outpost(二分+半平面交)
- 在工作线程(WorkerThread)中使用Handler
- ffmpeg API FR NET
- 嵌套For循环性能优化案例
- 二分法C++代码
- javascript 函数篇
- 软件行业创新加速 市场广阔
- ubuntu 下ftp服务的安装与启动
- 如何实现数据从EXCEL表格导入到SQL Server
- 自定义UINavigationItem.rightBarButtonItem