Handler.post与View.post的区别

简介:
Android的线程分UI线程与非UI线程两类。而Handler是非UI线程向UI线程传递消息的桥梁。

除了非常常用sendMessage之外,Handler也提供了post(Runnable...),postDelayed等

风骚犀利的方法,利于我们使用“闭包式编程”。

 

View作为UI的一部分,也无例外的提供了一个淫荡的View.post(Runnable)方法,让我们在

UI线程中doSomeThing。灵活使用View.post。神马Handler,Activity.runOnUIThread,

都可以一边站去。

 

相同

在与UI线程的通信上,Handler与View,其实最终都做了同样的事情。就是将消息传递在UI线程

的消息队列里,执行一些处理操作。

 

不同的是

View.post方法想在非UI线程有效工作。如该方法的注释所说,必须保证该View已经被添加至窗口。

This method can be invoked from outside of the UI thread only when this View is attached to a window.

 另外给一个stackoverflow的例子:

 http://stackoverflow.com/questions/4083787/runnable-is-posted-successfully-but-not-run
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/5666680.html,如需转载请自行联系原作者

相关文章
|
6月前
|
网络协议 数据安全/隐私保护
get和post的区别
get和post的区别
55 0
|
6月前
|
Web App开发 缓存 网络协议
get和post的区别!
get和post的区别!
|
6月前
|
缓存 安全 数据安全/隐私保护
get 跟 post 有什么区别?
get 跟 post 有什么区别?
73 0
get和post的区别
`GET` 和 `POST` 是 HTTP 请求方法,常用于客户端(如浏览器)与服务器之间的通信。
|
6月前
|
缓存 安全 数据安全/隐私保护
GET和POST有什么区别
GET和POST有什么区别
|
网络协议 安全 数据安全/隐私保护
GET与POST的区别
GET与POST的区别
139 0
|
缓存 安全 前端开发
GET和POST有什么区别?
GET和POST有什么区别?
GET和POST有什么区别?
|
网络协议 安全
GET 和 POST 的区别
GET 和 POST 的区别
138 0
|
网络协议
get和post区别是什么?
get和post区别是什么?
191 0
|
缓存 安全 前端开发
GET和POST的真正区别?
GET和POST的真正区别?
128 0