Handler、Looper和MessageQueue构成了android系统中最重要的消息传递和处理机制系统
Handler运行基本原理如图所示
消息队列中的消息对象先进先出(FIFO)。Handler负责将消息对象加入队列中,Looper循环器不停的从消息队列中取出消息对象,调用Handler的handleMessage方法来处理消息。队列中没有消息对象时Looper则处于等待状态(阻塞)
Handler使用小例子:用户点击按钮,生成消息对象,打印消息内容
1、定义类继承Handler,复写handleMessage方法,生成Handler对象
2、获取Message对象并赋值,发送到消息队列中
3、Looper从消息队列中取出消息,并找到与之对应的Handler对象
4、Looper调用Handler对象的handleMessage处理消息