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