2011-07-13 4 views
1

Ce code ne fonctionne pas. L'écran de chargement ne s'affiche pas, cependant si je sors le http.load() cela fonctionne très bien.Android ProgressDialog ne fonctionne pas

Context ctx = v.getContext(); 
dialog = ProgressDialog.show(ctx, "Login", "Logging in..."); 
http.load(); 

code http:

try 
     { 
      HttpClient hc = new DefaultHttpClient(); 
      HttpPost post = newHttpPost("http://www.example.com/"); 

      HttpResponse rp = hc.execute(post); 

      if(rp.getStatusLine().getStatusCode() == HttpStatus.SC_OK) 
      { 
       result = EntityUtils.toString(rp.getEntity()); 
      } 
     }catch(IOException e){ 
      e.printStackTrace(); 
     } 

}

+0

Que voulez-vous dire exactement par "ne fonctionne pas"? – mibollma

+0

Obtenez-vous une exception, autre que IOException dans http.load()? Est-ce que http.load() bloque l'exécution? – kgiannakakis

Répondre

3

C'est parce que vous appelez http.load() de fil interface utilisateur et il est bloqué jusqu'à ce que cet appel soit terminé. Vous devriez utiliser AsyncTask pour cela.

Questions connexes