From e40cf952c0c8f707b2fe904164ec980304a4b745 Mon Sep 17 00:00:00 2001 From: fengjignqi <15192412330@163.com> Date: Thu, 4 Jun 2026 17:48:36 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=9E=E6=8E=A5=E8=93=9D=E7=89=99=EF=BC=8C?= =?UTF-8?q?=E9=85=8D=E7=BD=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ckkj/water/base/BaseActivity.java | 42 +++++++++ .../water/device/AddDeviceActivity_copy.java | 1 + .../ckkj/water/device/SelectWifiActivity.java | 12 ++- .../water/dialog/LoadingProgressDialog.java | 94 +++++++++++++++++++ .../res/drawable/shape_loading_trans_bg.xml | 5 + .../res/layout/dialog_progress_layout.xml | 41 ++++++++ 6 files changed, 194 insertions(+), 1 deletion(-) create mode 100644 app/src/main/java/com/ckkj/water/dialog/LoadingProgressDialog.java create mode 100644 app/src/main/res/drawable/shape_loading_trans_bg.xml create mode 100644 app/src/main/res/layout/dialog_progress_layout.xml diff --git a/app/src/main/java/com/ckkj/water/base/BaseActivity.java b/app/src/main/java/com/ckkj/water/base/BaseActivity.java index 3d6c1b2..4384bbc 100644 --- a/app/src/main/java/com/ckkj/water/base/BaseActivity.java +++ b/app/src/main/java/com/ckkj/water/base/BaseActivity.java @@ -43,6 +43,7 @@ import androidx.appcompat.app.AppCompatDelegate; import androidx.core.app.ActivityCompat; import androidx.viewbinding.ViewBinding; +import com.ckkj.water.dialog.LoadingProgressDialog; import com.ckkj.water.utils.manager.ThemeManager; import com.esafirm.imagepicker.features.ImagePicker; import com.hjq.permissions.OnPermissionCallback; @@ -275,6 +276,16 @@ public abstract class BaseActivity } catch (Exception e) { e.printStackTrace(); } + + LoadingProgressDialog progressDialog = mProgressLoadingDialog; + try { + if (progressDialog != null && mContext != null) { + mProgressLoadingDialog = null; + progressDialog.dismiss(); + } + } catch (Exception e) { + e.printStackTrace(); + } } //每个activity都需要创建Presenter @@ -317,6 +328,7 @@ public abstract class BaseActivity @Override public void hideLoading() { loadingDialog.dismiss(); + } @Override @@ -359,6 +371,9 @@ public abstract class BaseActivity protected LoadingDialog mLoadingDialog; + /** + * 普通加载loading + */ public void showLoadingDialog() { LoadingDialog dialog = mLoadingDialog; if (dialog == null && mContext != null) { @@ -381,6 +396,33 @@ public abstract class BaseActivity } } + /** + * 进度条加载loading + */ + protected LoadingProgressDialog mProgressLoadingDialog; + public void showProgressLoadingDialog(int progress) { + LoadingProgressDialog dialog = mProgressLoadingDialog; + if (dialog == null && mContext != null) { + dialog = new LoadingProgressDialog(mContext); + // 不可触摸取消 + dialog.setCanceledOnTouchOutside(false); + // 强制取消关闭界面 + dialog.setCancelable(true); + dialog.setOnCancelListener(dialog1 -> finish()); + dialog.setProgress( progress); + mProgressLoadingDialog = dialog; + } else { + dialog.dismiss(); + } + if (dialog != null && mContext != null) { + try { + dialog.show(); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + @Override public void onNetChange(int netModel) { diff --git a/app/src/main/java/com/ckkj/water/device/AddDeviceActivity_copy.java b/app/src/main/java/com/ckkj/water/device/AddDeviceActivity_copy.java index e73ec72..fdfbde1 100644 --- a/app/src/main/java/com/ckkj/water/device/AddDeviceActivity_copy.java +++ b/app/src/main/java/com/ckkj/water/device/AddDeviceActivity_copy.java @@ -122,6 +122,7 @@ public class AddDeviceActivity_copy extends BaseActivity + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_progress_layout.xml b/app/src/main/res/layout/dialog_progress_layout.xml new file mode 100644 index 0000000..f1a636e --- /dev/null +++ b/app/src/main/res/layout/dialog_progress_layout.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + \ No newline at end of file