From 44ba605a4e850efa757020da5fb4cf02bdf6e3ab Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期一, 08 九月 2025 10:55:18 +0800
Subject: [PATCH] 2025年09月08日10:55:15
---
app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java | 95 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 94 insertions(+), 1 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java b/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java
index e49c4ff..f3fac7c 100644
--- a/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java
@@ -1,20 +1,35 @@
package com.hdl.photovoltaic.base;
import android.app.Activity;
+import android.content.Context;
import android.content.Intent;
+import android.content.res.Configuration;
import android.os.Bundle;
import android.view.View;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
+import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.listener.BaseView;
+import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.utils.AppManagerUtils;
+import com.hdl.photovoltaic.utils.LocalManageUtil;
+import com.hdl.photovoltaic.widget.LoadingDialog;
+import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
+
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
public abstract class BaseActivity extends AppCompatActivity implements BaseView {
+ private LoadingDialog loadingDialog;
protected Activity _mActivity;
+
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
@@ -32,15 +47,92 @@
throw new RuntimeException("getContentView() should be a @LayoutRes or a View");
}
onBindView(savedInstanceState);
+ //娉ㄥ唽EventBus
+ registerEventBus();
+ }
+
+ @Override
+ protected void attachBaseContext(Context newBase) {
+ //app涓嫳鏂囪缃�
+ LocalManageUtil.changeAppLanguage(UserConfigManage.getInstance().getCurrentAppLanguage(), newBase);
+ super.attachBaseContext(newBase);
+
+
+ }
+
+ /**
+ * 鑾峰彇LoadingDialog
+ *
+ * @return LoadingDialog
+ */
+ protected LoadingDialog getLoadingDialog() {
+ if (loadingDialog == null && _mActivity != null) {
+ loadingDialog = new LoadingDialog(_mActivity, R.style.Custom_Dialog);
+ }
+ return loadingDialog;
+ }
+
+ /**
+ * 寮�濮婰oading
+ */
+ protected void showLoading() {
+ getLoadingDialog().start();
+ }
+
+ /**
+ * 寮�濮婰oading
+ *
+ * @param mes 鑷畾涔夋枃鏈�
+ */
+ protected void showLoading(String mes) {
+ getLoadingDialog().start();
+ getLoadingDialog().setText(mes);
+ }
+
+ /**
+ * 鍋滄闅愯棌Loading
+ */
+ protected void hideLoading() {
+ HdlThreadLogic.runMainThread(new Runnable() {
+ @Override
+ public void run() {
+ if (loadingDialog != null && loadingDialog.isShowing()) {
+ loadingDialog.stop();
+ }
+ }
+ }, null, null);
}
@Override
protected void onDestroy() {
super.onDestroy();
+ //闅愯棌Loading
+ hideLoading();
+ //绉婚櫎Activity
+ AppManagerUtils.getAppManager().removeActivity(this);
+ //娉ㄩ攢EventBus
+ unregisterEventBus();
}
+
+ protected void unregisterEventBus() {
+ if (EventBus.getDefault().isRegistered(this)) {
+ EventBus.getDefault().unregister(this);
+ }
+ }
+
+ protected void registerEventBus() {
+ if (!EventBus.getDefault().isRegistered(this)) {
+ EventBus.getDefault().register(this);
+ }
+ }
+
+ @Subscribe(threadMode = ThreadMode.POSTING)
+ public void onEventMessage(BaseEventBus eventBus) {
+ }
+
/**
* 鏄剧ずView
@@ -67,7 +159,7 @@
/**
* 绠�鍗曠殑璺宠浆Activity
*
- * @param clazz
+ * @param clazz _
*/
protected void startActivity(Class<?> clazz) {
Intent intent = new Intent(this, clazz);
@@ -81,6 +173,7 @@
public int dip2px(float dpValue) {
final float scale = getResources().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
+
}
/**
--
Gitblit v1.8.0