请帮忙,AsyncTask完成后我无法关闭ProgressDialog。我搜索了答案,但没有发现。 当我使用线程而不是AsyncTask时,此代码正常工作。 有什么想法吗?AsyncTask完成后无法关闭ProgressDialog
Context appContext;
ProgressDialog pd;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
appContext=this;
MyTask myTask=new MyTask();
myTask.execute();
}
class MyTask extends AsyncTask<Void, Void, Void>
{
@Override
protected void onPreExecute()
{
pd = ProgressDialog.show(appContext, "Wait..", "Loading data",
true, false);
pd.setCancelable(false);
super.onPreExecute();
}
@Override
protected Void doInBackground(Void... arg0)
{
//something
return null;
}
@Override
protected void onPostExecute(Void result)
{
if (pd!=null)
pd.dismiss();
super.onPostExecute(result);
}
}
- 只是为了清楚起见...您将您的Context对象命名为“appContext”。这实际上是您的Activity的上下文,而不是您的应用程序的上下文。这是Android世界中两个完全不同的东西。 – dell116