From fcdddf8b9b34f9930bec454b5fffe41c0e33ba3c Mon Sep 17 00:00:00 2001 From: Linjiajia <319408893@qq.com> Date: 星期一, 24 四月 2023 21:17:05 +0800 Subject: [PATCH] 功能模块大部分 --- app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java | 34 +++++++++++++++++++++------------- 1 files changed, 21 insertions(+), 13 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 300fbaa..51b3ab8 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,15 +15,14 @@ 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.BaseApplication; 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.android.app_base.utils.ScreenSizeUtils; import com.blankj.utilcode.util.ToastUtils; import com.gyf.immersionbar.ImmersionBar; import com.hjq.bar.TitleBar; @@ -34,11 +33,10 @@ /** * Activity鍩虹被,鎵�鏈夌殑 Activity 閮借缁ф壙姝ょ被 */ -public abstract class BaseActivity<V extends ViewDataBinding,VM extends BaseViewModel> extends AppCompatActivity implements TitleBarAction, ClickAction { - 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; - /** * 鏍囬鏍忓璞� */ @@ -47,8 +45,6 @@ * 鐘舵�佹爮娌夋蹈 */ private ImmersionBar mImmersionBar; - - @Override protected void onCreate(@Nullable Bundle savedInstanceState) { @@ -61,10 +57,6 @@ initView(); //椤甸潰浜嬩欢鐩戝惉鐨勬柟娉曪紝鐢ㄤ簬ViewModel灞傝浆鍒癡iew灞傜殑浜嬩欢娉ㄥ唽 initLiveDataObserve(); - } - @Override - protected void onResume() { - super.onResume(); //椤甸潰鏁版嵁鍒濆鍖栨柟娉� initData(); } @@ -91,6 +83,7 @@ initStateView(); //鍒濆鍖栨矇娴稿紡鐘舵�佹爮鍜� titleBar initStatusBar(); + initSoftKeyboard(); } /** @@ -98,8 +91,7 @@ */ protected void initViewDataBindingAndViewModel() { if (getLayoutId() > 0) { - binding = DataBindingUtil.setContentView(this, getLayoutId()); - initSoftKeyboard(); + binding = initViewBinding(); } viewModelId = getVariableId(); viewModel = initViewModel(); @@ -113,6 +105,13 @@ //璁¬iewModel鎷ユ湁View鐨勭敓鍛藉懆鏈熸劅搴� getLifecycle().addObserver(viewModel); } + } + + /** + * 鍒濆鍖朧iewBinding + */ + protected VDB initViewBinding() { + return DataBindingUtil.setContentView(this, getLayoutId()); } /** * 鍒濆鍖朧iewModel @@ -130,6 +129,7 @@ return new ViewModelProvider(this, (ViewModelProvider.Factory) ViewModelProvider.AndroidViewModelFactory.getInstance(getApplication())).get(vmClass); } + /** * 瀵圭姸鎬佽鍥緇iveData杩涜瑙傚療鐩戝惉 */ @@ -146,6 +146,9 @@ break; case DATA_LOADING: dataLoading(); + break; + case DATA_FINISH: + dataFinish(); break; case DATA_ERROR: dataError(); @@ -171,6 +174,9 @@ } }); } + + + /** * 缂虹渷椤电瓑鐘舵�佽鍥剧殑鏇存柊 * 鏈夐渶姹傜殑锛屽湪瀛愮被閫夋嫨閲嶅啓 @@ -181,6 +187,8 @@ } protected void dataLoading() { } + protected void dataFinish() { + } protected void dataError() { } protected void dataNull() { -- Gitblit v1.9.1