阅读背景:

Android--Handler

来源:互联网 
!-- flowchart 箭头图标 勿删 --
Message:消息
    可理解为线程间通讯的数据单元,可通过Message携带需要的数据
    创建对象:Message.obtain(what)
    封装数据:
        public int what //id标识
        public int age1
        public int age2
        public Object obj

Handler:处理器
    Handler是Message的处理器,同时也负责消息的发送和移除工作
    发送即时消息:sendMessage(Message msg)
    发送延时消息:sendMessageDelayed(Message msg,long time)
    处理消息:handlerMessage(Message msg)(回调方法)
    移除还未处理的消息:removeMessages(int what)
    移除所有未处理的消息:removeCallbacksAndMessage(null)


MessageQueue:消息队列
    用来存放通过Handler发送的消息
    它是用来按Message的when排序的优先队列

Looper(钩子):循环器
    负责循环取出Message Queue里面的当前需要处理的Message
    交给对应的Handler进行处理
    处理完后将Message缓存到消息池中,已备复用


使用Handler的一般步骤:
1,创建Handler成员变量对象,并重写handleMessage()
2,在分/主线程创建Massage对象
3,使用handle对象发送Message
4,在handleMessage()中处理消息
Message



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: