一、handler消息傳遞的機制。
角色描述:
1.Thread 非UI線程。用于做耗時的操作。
2.Handler 信使。講消息放入消息隊列。
3.Message 消息。 由非UI線程創建。用于存放消息信息。
4.MessageQueue 消息隊列。 由主線程創建。用于存儲從不同線程傳遞過來的消息。
5.Looper 消息管理員。 循環著從消息隊列中拿消息給UI線程。
6.UI Thread UI線程。管理和更新UI。
工作原理:
當應用程序第一次啟動的時候,會創建UI線程。用于管理和更新UI。UI線程會創建一個消息隊列,用于管理所有的消息。當開啟非UI線程做耗時操作的時候,非UI線程不能直接更新UI。這時候講更新信息瘋轉成為一個消息,交給handler信使。信使講消息放入到消息隊列中。Looper消息管理員會不停地遍歷消息隊列,取出消息分發給Handler去處理消息。
二、Handler的常用方法
三、Mesage的常用方法