0
我做了一些需要几秒钟的数据库保存。与此同时,我想显示我的ProgressDialog以显示该应用程序正在处理它。ProgressDialog不应该被取消
class CreateNewSaves extends AsyncTask<String, String, String> {
/**
* Before starting background thread Show Progress Dialog
* */
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(activityContext);
pDialog.setMessage(activityContext.getString(R.string.upload_message));
pDialog.setIndeterminate(false);
pDialog.show();
pDialog.setCancelable(false);
pDialog.setCanceledOnTouchOutside(false);
}
/**
* Creating saves
* */
protected String doInBackground(String... args) {
//Some work done
return null;
}
/**
* After completing background task Dismiss the progress dialog
* **/
protected void onPostExecute(String file_url) {
// dismiss the dialog once done
pDialog.dismiss();
}
我不希望这ProgressDialog要取消,所以,我做
setCancelable(false);
setCanceledOnTouchOutside(false);
但触摸屏或后退按钮时ProgressDialog仍然取消。 我不确定它是隐藏还是被解雇。
这是我第一次尝试的方式。然而,回到这个方式,然后做一个项目重建工作。有时必须重建项目以应用更改是否正常? (我猜这个项目重建有助于考虑setCancelable和setCanceledOnTouchOutside的变化) – Cedric
如果android不需要重建,运行该项目。它应该反映在应用程序中。否则杀死应用程序再次运行,最后的选择,将明确卸载并安装应用程序。 – Sush
有时会发生,当我停止调试并再次以调试模式启动应用程序时,不会应用更改。我可以看到,当应用程序停在一条空线上的缺点处时 - 哪里发生了变化。 – Cedric