From b3a51f064c4dfb27f54cd9526803338d2e8dc296 Mon Sep 17 00:00:00 2001
From: Runt <qingingrunt2010@qq.com>
Date: Sat, 13 Aug 2022 16:26:49 +0000
Subject: [PATCH] 添加注释,部分优化

---
 app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java |   23 ++++++++++++++++++-----
 1 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java b/app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java
index 40cb405..44a86d1 100644
--- a/app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java
+++ b/app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java
@@ -1,5 +1,8 @@
 package com.runt.open.mvvm.base.activities;
 
+import android.view.MotionEvent;
+import android.view.View;
+
 import androidx.annotation.NonNull;
 import androidx.lifecycle.Observer;
 import androidx.recyclerview.widget.LinearLayoutManager;
@@ -16,9 +19,14 @@
 import com.scwang.smart.refresh.layout.listener.OnRefreshLoadMoreListener;
 
 import java.lang.reflect.ParameterizedType;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
+ * 含有上拉刷新的Activity
+ * 继承此类,有效优化代码60行
+ * 试用于 有下拉刷新,上拉加载等分页需求的界面
  * Created by Administrator on 2021/11/4 0004.
  */
 public abstract class LoadPageActivity<VB extends ViewBinding,VM extends LoadPageViewModel,A extends BaseAdapter,RESULT>
@@ -28,23 +36,26 @@
     //适配器
     protected A adapter;
 
-    protected abstract String initTitle();
+    protected String initTitle(){return null;}
 
     @Override
     public void initViews() {
+        if(initTitle() != null) {
+            setTitle(initTitle());
+        }
         try {
             Class<A> entityClass = (Class<A>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[2];
             this.adapter = entityClass.newInstance();//实例化泛型
         } catch (Exception e) {
             e.printStackTrace();
         }
+        refresh = mBinding.getRoot().findViewById(R.id.refresh);
         refresh.setRefreshHeader(new ClassicsHeader(mContext));
         refresh.setRefreshFooter(new ClassicsFooter(mContext));
         refresh.setOnRefreshLoadMoreListener(this);
         RecyclerView recycler = mBinding.getRoot().findViewById(R.id.recycler);
         recycler.setLayoutManager(new LinearLayoutManager(mContext));
         recycler.setAdapter(adapter);
-        refresh = mBinding.getRoot().findViewById(R.id.refresh);
         refresh.setOnRefreshLoadMoreListener(this);
         mViewModel.getLiveData().observe(this, (Observer<List<RESULT>>) list -> {
             adapter.showNull = true;
@@ -81,18 +92,20 @@
      * 参数
      * @return
      */
-    protected Object[] requestParams(){return null;};
+    protected Map requestParams() {
+        return new HashMap();
+    }
 
     @Override
     public void onRefresh(@NonNull RefreshLayout refreshLayout) {
         page = 0;
-        mViewModel.requestData(mViewModel.request(page,requestParams()));
+        mViewModel.requestData(page,requestParams());
     }
 
     @Override
     public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
         page++;
-        mViewModel.requestData(mViewModel.request(page,requestParams()));
+        mViewModel.requestData(page,requestParams());
     }
 
 

--
Gitblit v1.9.1