【发布时间】:2011-07-24 04:02:11
【问题描述】:
我正在通过一本书学习,它给了我这个例子:
Handler handler=new Handler() {
@Override
public void handleMessage(Message msg) {
bar.incrementProgressBy(5);
}
};
和
Thread background=new Thread(new Runnable() {
public void run() {
try {
for (int i=0;i<20 && isRunning.get();i++) {
Thread.sleep(500);
handler.sendMessage(handler.obtainMessage());
}
} catch (Throwable t) {
// just end the background thread
}
}
});
效果很好。但是,在书的后面,它说:
如果你不想对 Message 对象大惊小怪,你也可以通过 Runnable 对象到 Handler,它将运行那些 Runnable 活动 UI 线程上的对象。 ...您可以使用相同的方法 在任何视图(即任何小部件或容器)上。这稍微简化了 您的代码,因为您可以跳过 Handler 对象。
但是没有给出如何通过Runnable 对象执行此操作的示例。有人有例子吗?
【问题讨论】:
标签: android multithreading runnable handlers