我必须知道处理程序基本上用于运行代码的小部分等...
但我没有得到关于何时使用处理程序特别理想的确切场景!
任何帮助???
谢谢, 大卫
答案 0 :(得分:2)
处理程序用于从其他(非UI)线程更新UI。
例如,您可以在Activity类上声明一个Handler:
Handler h = new Handler();
然后你在不同的线程上有一些其他任务想要更新一些UI(进度条,状态消息等)。这会崩溃:
progressBar.setProgress(50);
相反,请这样称呼:
h.post(new Runnable() {
public void run() {
progressBar.setProgress(50);
}
});
答案 1 :(得分:1)
我自己是个新手,但是我会给出一个新手的例子,因为我最近才知道这个,我相信还有更多。
当您在另一个线程中执行某些操作时,如果要更新主UI,则必须使用Handler
。例如,在我的情况下,我在以TimerTask
运行的图像幻灯片代码中使用它。您无法使用ImageView
中的下一张图片更新主用户界面TimerTask
,因为它位于不同的主题中。所以你必须使用Handler
或者你得到一个错误。
这只是一个例子。我希望这会有所帮助。