Junior — Middle
Como adquirir uma mensagem no thread principal usando Handler e Looper?
sobes.tech IA
Resposta da IA
No Android, para processar mensagens no thread principal (UI), usa-se a classe Looper, que cria um ciclo de processamento de mensagens, e Handler, que coloca as mensagens na fila desse Looper.
Para obter uma mensagem no thread principal:
- No thread principal, chama-se
Looper.getMainLooper(), que retorna o Looper do thread principal. - Cria-se um Handler associado a esse Looper:
Handler handler = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(Message msg) {
// Processamento da mensagem no thread principal
}
};
- Mensagens ou objetos Runnable podem ser enviados a esse Handler, e eles serão processados no thread principal.
Assim, Handler e Looper fornecem um mecanismo de fila e processamento de mensagens no thread principal, permitindo atualizar a UI de forma segura de outros threads.