2011-07-13 8 views
1

このコードは機能しません。ローディング画面は表示されませんが、http.load()を取り出すとうまく動作します。Android ProgressDialogが動作しない

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

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

「動作していない」とはどういう意味ですか? – mibollma

+0

http.load()でIOException以外の例外が発生していますか? http.load()は実行をブロックしていますか? – kgiannakakis

答えて

3

あなたはUIスレッドからhttp.load()を呼び出していると、この呼び出しが完了するまで、それがブロックされるためです。そのためにはAsyncTaskを使用してください。

関連する問題