2011-02-04 18 views
2
私はActivity2するActivity1から制御を転送mは

Androidのブランク画面問題

Activity2私はsetcontentView

を使用していますが、progressDialogではない、いくつかのネットワーク操作の後にsetContentView

前のonCreateでprogressDialogを使用しています で全く表示...

progressDialogをアーカイブする方法。

ありがとうございます。

+2

作業中のコードを質問に追加することを検討してください – mcveat

答えて

3

私たちが確信できるようにいくつかのコードを記入してください。しかし、あなたのネットワーク操作のためにそのコードを賭けています。ダイアログの作成を呼び出すときにthis questionと同じように、にUIスレッドがダイアログを作成するように要求していると思いますが、show()メソッドが返されると必ずしも発生するとは限りません。 onCreateでネットワーク操作を実行すると、完了するまでUIスレッドがブロックされ、Dialogが表示されなくなります。任意のネットワーク要求をAsyncTaskまたはThread/Handlerの組み合わせに移動する必要があります。 ProgressDiaの

2

(ショーを呼び出すことを忘れないでください)ログ:

ProgressDialog dialogLoad; 
    dialogLoad = ProgressDialog.show(this, "", "Loading...", true); 

    //doing work 
    //when done with work 
    dialogLoad.dismiss(); 

===============================

はあまりにもスレッドを使用して考えてみて:

ProgressDialog dialogLoad; 
    dialogLoad = ProgressDialog.show(this, "", "Loading...", true); 

final Handler handler = new Handler() { 
      public void handleMessage(Message msg) { 
       dialogLoad.dismiss(); 
       } 
      }; 
     Thread updateData = new Thread() { 
      public void run() { 

      //************make calls to web service/network*************** 

       handler.sendEmptyMessage(0); 
       } 
      }; 
      updateData.start(); 
関連する問題