我正在通过一本书学习,它给了我这个例子:
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,它将在 Activity UI 线程上运行这些 Runnable 对象。...您可以在任何视图(即任何小部件或容器)上使用相同的方法。这稍微简化了您的代码,因为您可以跳过 Handler 对象。
但是没有给出如何通过Runnable
对象执行此操作的示例。有人有例子吗?