From 82e57df230ecb744af6c8865f80870ba03c86d89 Mon Sep 17 00:00:00 2001 From: Linjiajia <319408893@qq.com> Date: 星期二, 25 七月 2023 22:18:27 +0800 Subject: [PATCH] 基本功能完成 --- app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java | 21 +++++++++++++++------ 1 files changed, 15 insertions(+), 6 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..e129f29 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,8 +30,8 @@ * @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; @@ -65,12 +65,13 @@ 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) { @@ -79,6 +80,8 @@ 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,13 @@ getLifecycle().addObserver(viewModel); } + /** + * 鍒濆鍖朧iewBinding + */ + protected VDB initViewBinding(LayoutInflater inflater, @Nullable ViewGroup container) { + return DataBindingUtil.inflate(inflater,getLayoutId(), container, false); + + } /** * 鍒濆鍖朧iewModel -- Gitblit v1.9.1