您的位置:首页 > 产品设计 > UI/UE

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

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: