最新回答 / qq_JasonLee_0
可以这样理解吧。 handler是消息的处理者,looper是message Queue的管理者。Message Queue存放Message,通过looper进行FIFO(先进先出)的顺序轮询。
2015-10-28
所以说,这节没有太大的意义,除了告诉大家,在ViewRootImpl没有实例化的时候是不会check是否是主线程,也就是说,在非UI线程中是可以更新UI的,但是为了线程安全的原因,系统会强制要求只能在主线程中更新UI(猜测)。之所以说没有太大的意义是因为实际开发中是不会有这种情况的,谷歌官方也是说了只能在UI线程更新UI,这顶多算是一个BUG吧,看不懂的朋友们知道就行了,不用深究~
2015-10-23
感觉说的有点麻烦,其实就是两个handler互相调用发送message。
这节一句话就可以结束了,主线程与子线程之间的信息传递方式是啥?调用对方的sendMessage就行了~
这节一句话就可以结束了,主线程与子线程之间的信息传递方式是啥?调用对方的sendMessage就行了~
2015-10-23
http://blog.csdn.net/lmj623565791/article/details/38377229 更详细的源码分析
2015-10-21
因为判断是否在主线程更新UI的程序要ViewParent 不为空的情况下,但是第一个程序ViewParent还没有实例化,所以没有调用哪个checkThread的方法来判断是否在主线程,所以可以更新
2015-10-21