From a1d1fb7c44e33c4baeb52964a027932018bc1325 Mon Sep 17 00:00:00 2001
From: Linjiajia <319408893@qq.com>
Date: 星期二, 04 四月 2023 16:35:39 +0800
Subject: [PATCH] 家大事记添加接口、家庭资产、家庭设备

---
 app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java |   50 ++++++++++++++++++++++++++++++--------------------
 1 files changed, 30 insertions(+), 20 deletions(-)

diff --git a/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java b/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java
index 2fb56c9..73f922c 100644
--- a/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java
+++ b/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java
@@ -15,14 +15,16 @@
 import androidx.appcompat.app.AppCompatActivity;
 import androidx.databinding.DataBindingUtil;
 import androidx.databinding.ViewDataBinding;
+import androidx.drawerlayout.widget.DrawerLayout;
 import androidx.lifecycle.Observer;
 import androidx.lifecycle.ViewModelProvider;
 
 import com.android.app_base.action.TitleBarAction;
+import com.android.app_base.base.action.ClickAction;
 import com.android.app_base.base.viewmodel.BaseViewModel;
 import com.android.app_base.base.StateViewEnum;
+import com.blankj.utilcode.util.ToastUtils;
 import com.gyf.immersionbar.ImmersionBar;
-import com.hjq.bar.OnTitleBarListener;
 import com.hjq.bar.TitleBar;
 
 import java.lang.reflect.ParameterizedType;
@@ -31,11 +33,10 @@
 /**
  *  Activity鍩虹被,鎵�鏈夌殑 Activity 閮借缁ф壙姝ょ被
  */
-public abstract class BaseActivity<V extends ViewDataBinding,VM extends BaseViewModel> extends AppCompatActivity implements TitleBarAction{
-    protected V binding;
+public abstract class BaseActivity<VDB extends ViewDataBinding,VM extends BaseViewModel> extends AppCompatActivity implements TitleBarAction, ClickAction {
+    protected VDB binding;
     protected VM viewModel;
     private int viewModelId;
-
     /**
      * 鏍囬鏍忓璞�
      */
@@ -44,12 +45,6 @@
      * 鐘舵�佹爮娌夋蹈
      */
     private ImmersionBar mImmersionBar;
-
-
-    @Override
-    protected void onResume() {
-        super.onResume();
-    }
 
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
@@ -60,11 +55,17 @@
         initParam();
         //椤甸潰view鍒濆鍖栨柟娉�
         initView();
-        //椤甸潰鏁版嵁鍒濆鍖栨柟娉�
-        initData();
         //椤甸潰浜嬩欢鐩戝惉鐨勬柟娉曪紝鐢ㄤ簬ViewModel灞傝浆鍒癡iew灞傜殑浜嬩欢娉ㄥ唽
         initLiveDataObserve();
+
     }
+    @Override
+    protected void onResume() {
+        super.onResume();
+        //椤甸潰鏁版嵁鍒濆鍖栨柟娉�
+        initData();
+    }
+
 
     @Override
     protected void onDestroy() {
@@ -87,6 +88,7 @@
         initStateView();
         //鍒濆鍖栨矇娴稿紡鐘舵�佹爮鍜� titleBar
         initStatusBar();
+        initSoftKeyboard();
     }
 
     /**
@@ -94,8 +96,7 @@
      */
     protected void initViewDataBindingAndViewModel() {
         if (getLayoutId() > 0) {
-            binding = DataBindingUtil.setContentView(this, getLayoutId());
-            initSoftKeyboard();
+            binding = initViewBinding();
         }
         viewModelId = getVariableId();
         viewModel = initViewModel();
@@ -109,6 +110,13 @@
             //璁¬iewModel鎷ユ湁View鐨勭敓鍛藉懆鏈熸劅搴�
             getLifecycle().addObserver(viewModel);
         }
+    }
+
+    /**
+     * 鍒濆鍖朧iewBinding
+     */
+    protected VDB initViewBinding() {
+        return DataBindingUtil.setContentView(this, getLayoutId());
     }
     /**
      * 鍒濆鍖朧iewModel
@@ -125,6 +133,7 @@
         }
         return new ViewModelProvider(this, (ViewModelProvider.Factory) ViewModelProvider.AndroidViewModelFactory.getInstance(getApplication())).get(vmClass);
     }
+
 
     /**
      * 瀵圭姸鎬佽鍥緇iveData杩涜瑙傚療鐩戝惉
@@ -158,6 +167,12 @@
                     default:
                         break;
                 }
+            }
+        });
+        viewModel.getMessageLivaData().observe(this, new Observer<String>() {
+            @Override
+            public void onChanged(String message) {
+                ToastUtils.showShort(message);
             }
         });
     }
@@ -233,12 +248,6 @@
         return mTitleBar;
     }
 
-    @Override
-    public void onLeftClick(TitleBar titleBar) {
-        TitleBarAction.super.onLeftClick(titleBar);
-        onBackPressed();
-    }
-
     /**
      * 鑾峰彇鏍瑰竷灞�鐨刬d锛岀敱瀛愮被瀹炵幇杩斿洖
      * @return layout鐨刬d
@@ -288,6 +297,7 @@
             InputMethodManager manager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
             if (manager != null && manager.isActive(view)) {
                 manager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
+                view.clearFocus();
             }
         }
     }

--
Gitblit v1.9.1