Activity的runOnUiThread原理剖析

2016-05-03  本文已影响555人  百态社会

调用方法顺序图:

runOnUiThread()-----》post(Runnable r)----》sendMessageDelayed(Message msg,longdelayMillis)------》endMessageAtTime(Message msg,longuptimeMillis)--》nqueueMessage(MessageQueue queue, Message msg,longuptimeMillis)

最后核心代码在:

Handler的dispatchMessage方法:

public void dispatchMessage(Message msg) {

if(msg.callback !=null) {

handleCallback(msg);

}else{

if(mCallback!=null) {

if(mCallback.handleMessage(msg)) {

return;

}

}

handleMessage(msg);

}

}

上一篇 下一篇

猜你喜欢

热点阅读