1、Handler的作用:主线程不能执行耗时操作,子线程不能更新UI,所以在子线程中执行耗时的操作,并将操作的结果通过handler机制发送到主线程来更新UI。
2、Handler机制的原理:
例:子线程发送消息给主线程
子线程将处理的结果发送给Handler,Handler将其发送到主线程的MessageQuench(消息队列)中,消息队列中存储着众多等待处理的消息,在主线程中有消息循环器(Looper),Looper通过死循环,从消息队列中一次取出一个消息,发送给Handler,此时,在Handler中处理更新UI的操作
3、Handler机制中设计到的类
Handler、Message、MessageQueue、Looper
(1)
Message
【1】创建Message的方法
①直接new对象:Message message = new Message()
②使用obtain:Message message = Message.obtain()