package com.aries.library.fast.i; import android.view.View; import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseViewHolder; import com.chad.library.adapter.base.loadmore.LoadMoreView; import androidx.recyclerview.widget.RecyclerView; /** * @Author: AriesHoo on 2018/7/20 16:52 * @E-Mail: [email protected] * Function: 下拉及上拉刷新 * Description: * 1、2018-7-20 17:11:22 多状态集成关系 * 2、2018-7-20 17:39:55 去掉点击事件getMultiStatusViewChildClickListener * 3、2019-3-22 15:06:07 抽离下拉刷新功能并设置部分默认返回值 */ public interface IFastRefreshLoadView<T> extends IFastRefreshView, BaseQuickAdapter.RequestLoadMoreListener, IMultiStatusView { /** * 使用BaseRecyclerViewAdapterHelper作为上拉加载的实现方式 * 如果使用ListView或GridView等需要自己去实现上拉加载更多的逻辑 * * @return BaseRecyclerViewAdapterHelper的实现类 */ BaseQuickAdapter<T, BaseViewHolder> getAdapter(); /** * 获取RecyclerView的布局管理器对象,根据自己业务实际情况返回 * * @return RecyclerView的布局管理器对象 */ default RecyclerView.LayoutManager getLayoutManager() { return null; } /** * 获取加载更多布局 * * @return */ default LoadMoreView getLoadMoreView() { return null; } /** * 触发下拉或上拉刷新操作 * * @param page */ void loadData(int page); /** * 是否支持加载更多功能 * * @return */ default boolean isLoadMoreEnable() { return true; } /** * item是否有点击事件 * * @return */ default boolean isItemClickEnable() { return true; } /** * item点击回调 * * @param adapter * @param view * @param position */ default void onItemClicked(BaseQuickAdapter<T, BaseViewHolder> adapter, View view, int position) { } /** * 设置全局监听接口 * * @return */ IHttpRequestControl getIHttpRequestControl(); }