From 42ea59771a54d2591df0a6dd3936dda669be99ae Mon Sep 17 00:00:00 2001
From: gs <3129367635@qq.com>
Date: 星期一, 08 七月 2024 12:23:48 +0800
Subject: [PATCH] 会议统计接入增加,删除,修改接口
---
app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java | 50 +++++++++++++++++++++++++++++++++-----------------
1 files changed, 33 insertions(+), 17 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..bc15915 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
@@ -5,6 +5,7 @@
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
+import android.text.TextUtils;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
@@ -15,30 +16,30 @@
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.android.app_base.base.viewmodel.SimpleViewModel;
import com.blankj.utilcode.util.ToastUtils;
import com.gyf.immersionbar.ImmersionBar;
import com.hjq.bar.TitleBar;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
+import java.util.Set;
/**
* 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 +48,6 @@
* 鐘舵�佹爮娌夋蹈
*/
private ImmersionBar mImmersionBar;
-
-
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
@@ -61,10 +60,6 @@
initView();
//椤甸潰浜嬩欢鐩戝惉鐨勬柟娉曪紝鐢ㄤ簬ViewModel灞傝浆鍒癡iew灞傜殑浜嬩欢娉ㄥ唽
initLiveDataObserve();
- }
- @Override
- protected void onResume() {
- super.onResume();
//椤甸潰鏁版嵁鍒濆鍖栨柟娉�
initData();
}
@@ -91,6 +86,7 @@
initStateView();
//鍒濆鍖栨矇娴稿紡鐘舵�佹爮鍜� titleBar
initStatusBar();
+ initSoftKeyboard();
}
/**
@@ -98,8 +94,7 @@
*/
protected void initViewDataBindingAndViewModel() {
if (getLayoutId() > 0) {
- binding = DataBindingUtil.setContentView(this, getLayoutId());
- initSoftKeyboard();
+ binding = initViewBinding();
}
viewModelId = getVariableId();
viewModel = initViewModel();
@@ -114,6 +109,13 @@
getLifecycle().addObserver(viewModel);
}
}
+
+ /**
+ * 鍒濆鍖朧iewBinding
+ */
+ protected VDB initViewBinding() {
+ return DataBindingUtil.setContentView(this, getLayoutId());
+ }
/**
* 鍒濆鍖朧iewModel
* @return 杩斿洖涓�涓猇iewModel
@@ -124,11 +126,12 @@
if (type instanceof ParameterizedType){
vmClass = (Class) ((ParameterizedType) type).getActualTypeArguments()[1];
} else {
- //濡傛灉娌℃湁鎸囧畾娉涘瀷鍙傛暟锛屽垯榛樿浣跨敤BaseViewModel
- vmClass = (Class<VM>) BaseViewModel.class;
+ //濡傛灉娌℃湁鎸囧畾娉涘瀷鍙傛暟锛屽垯榛樿浣跨敤SimpleViewModel
+ vmClass = (Class<VM>) SimpleViewModel.class;
}
return new ViewModelProvider(this, (ViewModelProvider.Factory) ViewModelProvider.AndroidViewModelFactory.getInstance(getApplication())).get(vmClass);
}
+
/**
* 瀵圭姸鎬佽鍥緇iveData杩涜瑙傚療鐩戝惉
@@ -146,6 +149,9 @@
break;
case DATA_LOADING:
dataLoading();
+ break;
+ case DATA_FINISH:
+ dataFinish();
break;
case DATA_ERROR:
dataError();
@@ -167,19 +173,27 @@
viewModel.getMessageLivaData().observe(this, new Observer<String>() {
@Override
public void onChanged(String message) {
- ToastUtils.showShort(message);
+ if (!TextUtils.isEmpty(message)){
+ ToastUtils.showShort(message);
+ }
}
});
}
+
+
+
/**
* 缂虹渷椤电瓑鐘舵�佽鍥剧殑鏇存柊
* 鏈夐渶姹傜殑锛屽湪瀛愮被閫夋嫨閲嶅啓
*/
protected void dialogLoading() {
+
}
protected void dialogDismiss() {
}
protected void dataLoading() {
+ }
+ protected void dataFinish() {
}
protected void dataError() {
}
@@ -194,12 +208,14 @@
* 鍒濆鍖栨矇娴稿紡鐘舵�佹爮
*/
protected void initStatusBar(){
+ if (getTitleBar() != null) {
+ getTitleBar().setOnTitleBarListener(this);
+ }
if (isStatusBarImmersionEnabled()) {
getImmersionBarConfig().init();
// 璁剧疆鏍囬鏍忔矇娴�()
if (getTitleBar() != null) {
ImmersionBar.setTitleBar(this, getTitleBar());
- getTitleBar().setOnTitleBarListener(this);
}
}
}
--
Gitblit v1.9.1