[英]Android - Showing progress dialog in a separate class which extends AsyncTask
我有一个名为myAPI
的类,用于从服务器数据库获取信息。 该类有几个用于获取个人信息的类,例如getCourseInformation
, login
, register
等。
直到我意识到我确实需要一个ProgressDialog
为止,它一直运行良好。 确切地说,是一个Indeterminate ProgressDialog
。
尝试这样做:
ProgressDialog progressDialog;
Context context;
public myAPI(Context context)
{
this.context= context;
}
public myAPI()
{
}
获取myAPI
调用myAPI
的类的上下文。
下面是我如何在班级之一中使用它。
public class login extends AsyncTask<MyLogin, String, String>{
@Override
protected void onPreExecute() {
progressDialog = new ProgressDialog(context);
progressDialog.setMessage("Loading...");
progressDialog.setIndeterminate(true);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.setCancelable(true);
progressDialog.show();
}
...
}
但这是行不通的。 它说Unable to add window -- token null is not for an application
调试它,我可以看到上下文在那里。。所以它不应该是那个。。任何指南将不胜感激!
代替使用上下文,而是尝试使用活动
@Override
protected void onPreExecute() {
progressDialog = new ProgressDialog(getActivity());
progressDialog.setMessage("Loading...");
progressDialog.setIndeterminate(true);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.setCancelable(true);
progressDialog.show();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.