Я уже давно ищу ответ на этот вопрос.У меня есть асинхронная задача, которая загружает базу данных, необходимую для моего приложения, в то время как эта загрузка загружает мое приложение, я ничего не могу сделать, так как все данные, на которые оно ссылается, находятся в этом файле, у меня есть приложение, ожидающее загрузки файла, но я пытаюсьпокажите диалоговое окно прогресса, чтобы пользователь знал, что что-то происходит, в то время как он ожидает, что это произойдет.
мой код в настоящее время
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.покажите в предварительном выполнении и перенесите это в вызывающее действие без удачи.
пожалуйста, помогите!