Neste outro teste vamos simular uma operação demorada e mostrar a evolução do processamento através de um ProgressDialog com uma barra indicadora de progresso.
Alguns detalhes da implementação:
No onClick() do botão eu chamo o método ativaThread() que faz duas coisas: primeiro prepara o ProgressDialog e segundo prepara a thread e a starta.
Na thread fazemos uma contagem de 0 a 100 e a cada iteração enviamos uma atualização da barra de progresso, como estamos em uma thread que não a UI Thread usamos o handler-runnable para isso.
Quando a contagem chega a 100, mudamos o status para concluído e setamos o status da thread para interrupted. (Só para não ficar parado no sleep).
No final, antes de sair da thread o ProgressDialog é fechado e enviamos uma breve mensagem via toast.
Seguem os códigos.
nao funciona
ResponderExcluiro metodo run aparece duplicado
Este comentário foi removido pelo autor.
ExcluirFunciona, sim! Além do método run da Thread, os outros dois são usados para serem executados na UI Thread via post da classe handler. Motivo: regra sagrada do Android nº 2.
ExcluirOlá tem como eu adicionar ProgressDialog Mostrando o insert do bd ?
ResponderExcluirSim. Basta colocar a rotina de inserção na thread ou numa AsynTask.
ExcluirEu só nao entendo onde eu vou colocar por exemplo minha busca sql
ResponderExcluirO local para se fazer alguma coisa é onde está o sleep.
ExcluirEle está no exemplo apenas para "gastar" um tempo.