Android 在asynctask中关闭对话框

Android 在asynctask中关闭对话框,android,Android,所以我想在完成异步任务后关闭对话框,但eclipse告诉我它无法解决。因此,我尝试将其移到onCreate()活动之外,以便asynctask可以看到它,但应用程序在运行时会关闭。当我查看DDMS时,它告诉我“系统服务在oncreate之前不可用于activites” 有人能帮帮我吗。先谢谢你 private class createUser extends AsyncTask<Void, Void, Integer> { int va = 0; Progre

所以我想在完成异步任务后关闭对话框,但eclipse告诉我它无法解决。因此,我尝试将其移到onCreate()活动之外,以便asynctask可以看到它,但应用程序在运行时会关闭。当我查看DDMS时,它告诉我“系统服务在oncreate之前不可用于activites”

有人能帮帮我吗。先谢谢你

    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;

        }
    }
私有类createUser扩展异步任务{
int-va=0;
ProgressDialog=ProgressDialog.show(MainActivity.this,“,
“正在创建用户…”,true);
Toast Toast=Toast.makeText(getApplicationContext(),“”,
烤面包片(长/短);
@凌驾
受保护的整数doInBackground(Void…params){
//TODO自动生成的方法存根
if(db.createUser(nameU.getText().toString(),userU.getText())
.toString(),emailU.getText().toString(),passU.getText()
.toString())==false){
va=0;
}否则{
va=1;
}
返回va;
}
受保护的void onPreExecute(){
dialog.show();
}
受保护的void onPostExecute(整数结果){
dialog.dismise();
如果(结果==0){
setext(“用户已经存在!”);
toast.show();
va=0;
}否则{
toast.setText(“成功”);
toast.show();
createU.disclose();//无法解析
va=1;
}
}

经过无数个小时的代码检查,我意识到我找到了一种方法,可以重新筛选“AsyncTask”的结果,并进行测试以确保其正确或错误。

发布您的活动代码和您看到的异常。