gabrielemidio 11 de fev. de 2012
Não sei se você já tentou procurar nesse forum aqui
http://www.portalandroid.org/comunidade/viewforum.php?f=2&start=120
Talvez te ajude!
Abraços.
ArthurTurtle 15 de fev. de 2012
Fala Markissimo
Se eu entendi direito, você dispara uma thread que vai fazer algo um pouco demorado e gostaria de informa o usuario de “onde está o processo”, certo?
Se for isso voçê pode usar o AsyncTask, aqui esta um exemplo:
// Você pode cria uma classe privada dentro da sua classe principal , no caso a sua Activity
private class Processo extends AsyncTask < String , String , String > {
// Método que é responsável por executar a sua tarefa que vai demorar um pouco
@ Override
protected String doInBackground ( String ... params ) {
// aqui eu faço um while so para demonstração , mais você retira esse codigo e coloca o seu .
int i = 0 ;
while ( i < 1000 ){
// aqui ele vai "falar" para metodo onProgressUpdate para atualizar a tela com a sua string
publishProgress ( "Processo em: " + i );
Thread . sleep ( 1000 );
i ++ ;
}
return null ;
}
@ Override
protected void onProgressUpdate ( String ... values ) {
// Faz o setText no seu textView da tela
textView . setText ( values [ 0 ]);
}
Ai la no seu botão você faz algo parecido com isso:
Proc esso processo = new Processo () ;
// mando executar o processo
proc esso.execute ( "Executando" ) ;
Espero que isso ajude
Marky.Vasconcelos 15 de fev. de 2012
Se voce não estiver usando uma AsyncTask, voce pode sincronizar coma UI através de mensagens por um Handler.