| | |
| | | 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; |
| | |
| | | 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> |
| | |
| | | //适配器 |
| | | 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();//实例化泛型 |