【发布时间】:2010-10-10 11:49:19
【问题描述】:
我一直在寻找这个问题的答案已经有一段时间了。我有一个异步任务,它下载我的应用程序所需的数据库,而这正在下载我的应用程序不能做任何事情,因为它引用的所有数据都在这个文件中,我让应用程序等待下载文件,但我正在尝试显示一个进度对话框,以便用户在等待这件事发生时知道正在发生的事情。
我的代码目前是
public class fileDownloader extends AsyncTask<Void, Integer, SQLiteDatabase>
{
private File dbFile;
private ProgressDialog progressDialog;
private Context context;
private SQLiteDatabase database;
private SQLiteDatabase.CursorFactory factory;
public fileDownloader(Context c)
{
super();
context = c;
}
@Override
protected void onPreExecute()
{
super.onPreExecute();
progressDialog = new ProgressDialog(this.context);
progressDialog.setMessage("Downloading Database...");
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(true);
progressDialog.show();
}
@Override
protected SQLiteDatabase doInBackground(Void... v)
{
....
}
@Override
protected void onPostExecute(SQLiteDatabase db1)
{
progressDialog.dismiss();
}
但是没有任何显示,我也尝试在预执行中直接调用 ProgressDialog.show 并将其移动到调用活动,但没有运气。
请帮忙!
【问题讨论】:
-
我又一次尝试解决这个问题,但没有成功,我什至尝试添加一个 toast 看看是否可以让它显示出来,但也没有运气!
标签: android progress-bar android-asynctask