Android编程中的处理程序

时间:2010-09-08 06:43:49

标签: android handlers

我必须知道处理程序基本上用于运行代码的小部分等...

但我没有得到关于何时使用处理程序特别理想的确切场景!

任何帮助???

谢谢, 大卫

2 个答案:

答案 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或者你得到一个错误。

这只是一个例子。我希望这会有所帮助。