Handle的使用,首先我们要明白一点,那就是Handle的用处,Handle是用来做什么的,明白了这点,那么我在来理解下面的内容。
一:接下来我来说明一下Handle的用途
Handle到底是什么,我们为什么要来使用Handle,Handle 其实跟Intent有点类似,这里我直说类似,没有说什么是一样的啊,这种话,不是我说的,intent是用来实现四大组件之间的通信用的,而Handle呢?这个它的用途就是实现线程之间的通信,例如:当子线程做一个耗时的操作的时候,我们并不知道他什么时候做完,做完了也不知道,那么,我们是不是需要一个东西来通知我们,让我们知道呀,所以说,也就有了Handle的来源,没有Handle这个东西,对我们来说,非常的麻烦。
二:Handle的消息机制原理
1.图形展示
2.内部解析:目的(子线程中下载图片,下载完成之后通知主线程更新ui)
1.主线程中有一个消息处理器Handle,被放在主线程中的消息队列中
2.在主线程中有一个MessageQueue 也就是消息队列,存放消息
3.在主线程中也有一个Looper (不停的循环消息队列取消息)如果有新的消息就将消息交给消息处理器,handle会调用其中的handleMessage处理消息
3.具体实施
1.子线程,利用handle发送