我有一个异步任务在它自己的 Activity 中。我向它传递一个字符串值,它连接到我的 Web 服务并根据我传入的名称下载 Json 数据,返回 Json 结果集。效果很好。
我想在异步任务中添加一个进度微调器,但我不知道该怎么做。我仔细阅读了这个和许多其他博客,并接近但尚未找到解决方案。看来我要么需要将 asynctask 与 Activity 类一起使用以获取上下文,要么我必须将上下文作为参数传入——但我需要输入参数为 String。我读过有关构建一个可以包含 String 和 Context 参数的对象的可能性,但我对 Java 很陌生,不知道如何构建类似的东西,也没有找到关于如何构建的很好的解释这样做。通常,解释恰好是我需要的,然后说,“……然后你做 X,就是这样,”当 X 是我需要知道的。
我想要的只是一个在下载过程中旋转的旋转器。没有文本,没有对话,只有一个微调器。
最佳答案
class MyTask extends AsyncTask<Request, Void, Result> {
protected ProgressDialog progressDialog;
@Override
protected void onPreExecute()
{
super.onPreExecute();
progressDialog = ProgressDialog.show(YourActivity.this, "", "", true, false);
}
@Override protected Boolean doInBackground(Request... params) {
// do some work here
return true;
}
@Override protected void onPostExecute(Result res) {
progressDialog.dismiss();
}
}
关于android - 如何将进度条添加到独立的 Asynctask?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12405120/