当AsyncTask结束时,我会摧毁progress dialog。在摧毁progress dialog之前我是否要检查isShowing的值?
我试图不检查,同样会正常运行,但是不是有隐藏的漏洞?
if (progressDialog.isShowing()) {
progressDialog.dismiss();
}
当AsyncTask结束时,我会摧毁progress dialog。在摧毁progress dialog之前我是否要检查isShowing的值?
我试图不检查,同样会正常运行,但是不是有隐藏的漏洞?
if (progressDialog.isShowing()) {
progressDialog.dismiss();
}
似乎是在implementation中检查:
public void dismiss() {
if (Thread.currentThread() != mUiThread) {
mHandler.post(mDismissAction);
} else {
mDismissAction.run();
}
}
private void dismissDialog() {
if (mDecor == null || !mShowing) {
return;
}
try {
mWindowManager.removeView(mDecor);
} finally {
mDecor = null;
mWindow.closeAllPanels();
onStop();
mShowing = false;
sendDismissMessage();
}
}