2011-03-26 33 views
0

所以我想在完成我的asynctask後關閉我的對話框,但是eclipse告訴我它無法解析。所以我嘗試將它移動到onCreate()活動之外,以便asynctask可以看到它,但應用程序force在運行時關閉。當我查看DDMS時,它告訴我「系統服務在創建之前不可用於激活」。關閉asynctask中的對話框

有人可以幫我在這裏。先謝謝你。

private class createUser extends AsyncTask<Void, Void, Integer> { 
    int va = 0; 
    ProgressDialog dialog = ProgressDialog.show(MainActivity.this, "", 
      "Creating User...", true); 
    Toast toast = Toast.makeText(getApplicationContext(), "", 
      Toast.LENGTH_SHORT); 
    @Override 
    protected Integer doInBackground(Void... params) { 
     // TODO Auto-generated method stub 

     if (db.createUser(nameU.getText().toString(), userU.getText() 
       .toString(), emailU.getText().toString(), passU.getText() 
       .toString()) == false) { 
      va = 0; 
     } else { 
      va = 1; 
     } 



     return va; 
    } 

    protected void onPreExecute() { 
     dialog.show(); 
    } 

    protected void onPostExecute(Integer result) { 
     dialog.dismiss(); 
     if (result == 0) { 
      toast.setText("User already exists!"); 
      toast.show(); 

      va = 0; 

     } else { 
      toast.setText("Success"); 
      toast.show(); 
      createU.dismiss(); //cannot be resolve 
      va = 1; 

     } 
    } 
+0

發佈您的活動代碼和您看到的例外情況。 – Karan 2011-03-26 17:25:58

回答

0

我實現了通過代碼找了無數個小時後,我已經找到了一種方法,從「的AsyncTask」和測試retieve結果,以確保它是真的還是假的。