From 1df231fd6aafa221aef3532d069c7e27d4331be7 Mon Sep 17 00:00:00 2001
From: Linjiajia <319408893@qq.com>
Date: 星期日, 27 八月 2023 19:21:01 +0800
Subject: [PATCH] 功能全部完成

---
 app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java |   32 ++++++++++++++++++++------------
 1 files changed, 20 insertions(+), 12 deletions(-)

diff --git a/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java b/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java
index b85a593..42d1ef2 100644
--- a/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java
+++ b/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java
@@ -4,7 +4,6 @@
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.view.Window;
 
 import androidx.annotation.IdRes;
 import androidx.annotation.NonNull;
@@ -18,6 +17,7 @@
 
 import com.android.app_base.action.TitleBarAction;
 import com.android.app_base.base.StateViewEnum;
+import com.android.app_base.base.action.ClickAction;
 import com.android.app_base.base.viewmodel.BaseViewModel;
 import com.gyf.immersionbar.ImmersionBar;
 import com.hjq.bar.TitleBar;
@@ -30,27 +30,27 @@
  * @date 2023.03.02. 15:50
  * @desc Fragment鍩虹被
  */
-public abstract class BaseFragment<V extends ViewDataBinding,VM extends BaseViewModel> extends Fragment implements TitleBarAction {
-    protected V binding;
+public abstract class BaseFragment<VDB extends ViewDataBinding,VM extends BaseViewModel> extends Fragment implements TitleBarAction, ClickAction {
+    protected VDB binding;
     protected VM viewModel;
-    private int viewModelId;
+    protected int viewModelId;
 
     /**
      * 鏍囬鏍忓璞�
      */
-    private TitleBar mTitleBar;
+    protected TitleBar mTitleBar;
     /**
      * 鐘舵�佹爮娌夋蹈
      */
-    private ImmersionBar mImmersionBar;
+    protected ImmersionBar mImmersionBar;
     /**
      * 鏍瑰竷灞�
      */
-    private View mRootView;
+    protected View mRootView;
     /**
      * 璇ragment鏄惁鍔犺浇杩囨暟鎹�
      * */
-    private boolean isLoaded;
+    protected boolean isLoaded;
 
 
     @Override
@@ -65,20 +65,23 @@
     public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
         isLoaded = false;
         if (getLayoutId() > 0){
-            binding = DataBindingUtil.inflate(inflater,getLayoutId(), container, false);
+            binding = initViewBinding(inflater, container);
             mRootView = binding.getRoot();
             return mRootView;
         }
         return null;
     }
 
+
     @Override
-    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
+    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
         super.onViewCreated(view, savedInstanceState);
         //缁戝畾 ViewDataBinding 鍜� ViewModel
         initViewDataBindingAndViewModel();
         //鍒濆鍖栫姸鎬佽鍥�
         initStateView();
+        //鍒濆鍖栨矇娴稿紡鐘舵�佹爮鍜� titleBar
+        initStatusBar();
         //椤甸潰view鍒濆鍖栨柟娉�
         initView();
         //椤甸潰浜嬩欢鐩戝惉鐨勬柟娉曪紝鐢ㄤ簬ViewModel灞傝浆鍒癡iew灞傜殑浜嬩欢娉ㄥ唽
@@ -88,8 +91,7 @@
     @Override
     public void onResume() {
         super.onResume();
-        //鍒濆鍖栨矇娴稿紡鐘舵�佹爮鍜� titleBar
-        initStatusBar();
+
         if (!isLoaded){
             //椤甸潰鏁版嵁鍒濆鍖栨柟娉�
             initData();
@@ -122,6 +124,12 @@
         getLifecycle().addObserver(viewModel);
 
     }
+    /**
+     * 鍒濆鍖朧iewBinding
+     */
+    protected VDB initViewBinding(LayoutInflater inflater, @Nullable ViewGroup container) {
+        return DataBindingUtil.inflate(inflater,getLayoutId(), container, false);
+    }
 
     /**
      * 鍒濆鍖朧iewModel

--
Gitblit v1.9.1