Looper,handler类实现其他线程接收UI线程发送的消息
2015-09-10 08:51
423 查看
其他线程接收UI线程发送的消息:
class MyThread extends Thread { @Override public void run() { Looper.prepare(); mHandlerSendToThread = new Handler() { @Override public void handleMessage(Message msg) { Log.d("sendtothread", "接收到消息"); } }; Looper.loop(); }
new MyThread().start();
mHandlerSendToThread.sendEmptyMessage(22);
API:
下面这张图反过来理解就可以:
其他线程并没有自带Looper,需要创建Looper和MessageQueue来接收消息。
过程:UI线程--handler--把消息发送到消息队列--Looper接收—发送给Thread
相关文章推荐
- handler 通过线程来更新UI 实例60秒倒计时
- Quick sort 快速排序
- ajax2.guestbook.js
- Android studio 新建项目\values-v23\values-v23.xml报错
- iOS开发之UITableView全面解析
- UVA1608_Non-boring sequences
- WDK-build 添加Listing file type:assembly,Machine Code,and Source
- 条款20:宁以pass-by-reference-to-const替换pass-by-value(Prefer pass-by-reference-to-const to pass-by-value)
- Uva-12166 Equilibrium Mobile
- UITableView使用<1>之自定义UITableViewCell
- UIview 动画实现
- android 学习 在子线程中更新UI
- UIView的一些常用属性
- Xcode Server Tutorials: 3. Prebuild & Postbuild Scripts
- String,StringBuffer与StringBuilder的取舍
- hdu 5412 CRB and Queries
- UI:UITableView表视图
- UI线程阻塞及优化
- UIAlertView+Blocks.h
- 新人与三年经验的交互设计师有多大的差距?