1
我打電話與處理程序Web服務並顯示進度條與進度對話框永遠旋轉的活動恢復
// Create Progress dialogs
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case mDialogProgress:
dataLoadProgress = new ProgressDialog(this);
dataLoadProgress.setMessage("Loading...");
dataLoadProgress.setIndeterminate(true);
dataLoadProgress.setCancelable(false);
dataLoadProgress
.setProgressStyle(android.R.attr.progressBarStyleSmallTitle);
return dataLoadProgress;
default:
return null;
}
}
我已經調用下面的方法幫助的onStop停止,如果它的表現。
@Override
public void onStop() {
if (dataLoadProgress != null && dataLoadProgress.isShowing())
stopThread();
super.onStop();
}
private synchronized void stopThread() {
try {
if (getServerData != null) {
if (dataLoadProgress != null && dataLoadProgress.isShowing())
dismissDialog(mDialogProgress);
getServerData = null;
// // mHandler = null;
}
} catch (Exception e) {
CommonFunctions.DoCatchOperation(e);
}
}
現在,當我的應用程序轉到後臺模式和簡歷,它顯示progressdialog,它永遠旋轉和使用後退按鈕爲setCancelable(假)我不能阻止它;
我有打電話給我stopThread()在的onResume(),如果進展顯示那麼它會停下來,但是我調用web服務的的onCreate,並開始顯示ProgressDialog和下一個實例嘗試onCreate onResume調用後,我的ProgressDialog被解除。
所以我想停止這個永遠在後臺旋轉。
天啊。你和實現了這個線程機制。爲什麼?您可以嘗試使用AsyncTask。你正在用這種方式顯示對話框? –
@PareshMayani我現在有32項活動,我正在實施的代碼..所以只是試圖修復現有的代碼,如果可能的話.. –
32活動那麼什麼?你不能定義超級AsyncTask類並在所有這32個活動中擴展它。您只需在超級基礎任務中編寫對話框顯示。 –