关于Handler.post与View.post的区别

本文介绍了Android应用中更新UI的不同方式,包括使用Handler、View.post及Activity.runOnUiThread等方法,并对比了它们之间的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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.


http://www.cnblogs.com/zenip/archive/2013/01/26/2877737.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值