Handler、Looper和MessageQueue简介

Handler、Looper和MessageQueue构成了android系统中最重要的消息传递和处理机制系统

Handler运行基本原理如图所示

Handler、Looper和MessageQueue简介_第1张图片

消息队列中的消息对象先进先出(FIFO)。Handler负责将消息对象加入队列中,Looper循环器不停的从消息队列中取出消息对象,调用Handler的handleMessage方法来处理消息。队列中没有消息对象时Looper则处于等待状态(阻塞)

Handler使用小例子:用户点击按钮,生成消息对象,打印消息内容

1、定义类继承Handler,复写handleMessage方法,生成Handler对象

2、获取Message对象并赋值,发送到消息队列中

3、Looper从消息队列中取出消息,并找到与之对应的Handler对象

4、Looper调用Handler对象的handleMessage处理消息

Handler、Looper和MessageQueue简介_第2张图片

Handler、Looper和MessageQueue简介_第3张图片

你可能感兴趣的:(messagequeue)