Обработчики используются для обновления пользовательского интерфейса из других (не-пользовательских) потоков.
Например, вы можете объявить обработчик в своем классе Activity:
Handler h = new Handler();
Тогда у вас естьнекоторые другие задачи в другом потоке, которые хотят обновить некоторый интерфейс (индикатор выполнения, сообщение о состоянии и т. д.).Это приведет к сбою:
progressBar.setProgress(50);
Вместо этого вызовите это:
h.post(new Runnable() {
public void run() {
progressBar.setProgress(50);
}
});