下拉更新,底部上拉加载更多

implementation 'androidx.recyclerview:recyclerview:1.0.0'       //列表
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.1'

 

 

import android.content.Context;
import android.view.View;
import com.billy.android.swipe.nurseing.Entity.LeaveData;
import com.billy.android.swipe.nurseing.R;
import com.billy.android.swipe.nurseing.View.ILeaveView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.module.LoadMoreModule;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;

public class LeaveAdapter extends BaseQuickAdapter<LeaveData, BaseViewHolder> implements LoadMoreModule {
    
    private Context mContext;
    private ILeaveView mILeaveView;


    public LeaveAdapter(Context context, ILeaveView iILeaveView ,
                             int layoutResId, @Nullable List<LeaveData> data) {
        super(layoutResId, data);
        mContext = context;
        mILeaveView = iILeaveView;
    }

    @Override
    protected void convert(@NotNull BaseViewHolder baseViewHolder, LeaveData iLeaveData) {

        baseViewHolder.setText(R.id.tv_leave_time, iLeaveData.getStartTime()+" ~ "+iLeaveData.getEndTime())
                .setText(R.id.tv_leave_situation, iLeaveData.getLeaveCase())
                .setText(R.id.tv_leave_accompany, iLeaveData.getKinsfolk())
                .setText(R.id.tv_leave_desc, iLeaveData.getRemark());


        int position = getItemPosition(iLeaveData);
        baseViewHolder.findView(R.id.adapter_leave_delete).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //删除
                mILeaveView.deleteLeaveData(iLeaveData.getId(), position);
            }
        });

        baseViewHolder.findView(R.id.adapter_leave_opdate).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //编辑
                mILeaveView.goLeaveInfoActivity(1, position, iLeaveData);
            }
        });

    }

}

import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;

import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.billy.android.swipe.nurseing.Adapter.LeaveAdapter;
import com.billy.android.swipe.nurseing.Data.SelectAskForLeaveByOldPeopleIdRsp;
import com.billy.android.swipe.nurseing.Entity.LeaveData;
import com.billy.android.swipe.nurseing.Present.LeavePresent;
import com.billy.android.swipe.nurseing.Proxy.NetManageProxy;
import com.billy.android.swipe.nurseing.R;
import com.billy.android.swipe.nurseing.User.UserManager;
import com.billy.android.swipe.nurseing.Utils.Contants;
import com.billy.android.swipe.nurseing.View.ILeaveView;
import com.chad.library.adapter.base.listener.OnLoadMoreListener;

import org.xutils.view.annotation.ViewInject;

import java.util.ArrayList;

public class LeaveActivity extends BaseActivity implements ILeaveView ,SwipeRefreshLayout.OnRefreshListener {

    @ViewInject(R.id.rv_list)
    RecyclerView rv_leave_list;
    @ViewInject(R.id.swipeRefreshLayout)
    SwipeRefreshLayout swipeRefreshLayout;

    private LeavePresent mLeavePresent;
    private LeaveAdapter mLeaveAdapter;
    private String oldPeopleId;
    private int page = 1;
    private LeaveData mLeaveData = new LeaveData();
    private int loadMoreCount = 0;
    private boolean isfirst = true;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setBaseTitleBar(1, getResources().getString(R.string.leave_title), R.layout.titlebar_right);
        mTitlebar_divider.setVisibility(View.GONE);

        mLeavePresent = new LeavePresent(this, this);
        mLeaveAdapter = new LeaveAdapter(this, this, R.layout.adapter_leave, null);
        LinearLayoutManager layoutManager = new LinearLayoutManager(this);
        rv_leave_list.setLayoutManager(layoutManager);
        rv_leave_list.setAdapter(mLeaveAdapter);

        swipeRefreshLayout.setColorSchemeColors(getResources().getColor(R.color.blue1));
        swipeRefreshLayout.setEnabled(true);
        swipeRefreshLayout.setOnRefreshListener(this);
    }

    @Override
    protected int getLayoutId() {
        return R.layout.activity_leave;
    }

    @Override
    protected void onTitlebarRightListener() {
        super.onTitlebarRightListener();
       
    }

    @Override
    protected void onResume() {
        super.onResume();
      
    }

    @Override
    public void LeaveData(SelectAskForLeaveByOldPeopleIdRsp.SelectAskForLeaveByOldPeopleIdInfoData selectAskForLeaveByOldPeopleIdInfoData) {
        boolean isLastPage = selectAskForLeaveByOldPeopleIdInfoData.isLastPage();
        swipeRefreshLayout.setRefreshing(false);
        if (isfirst){
            initRecycleView(selectAskForLeaveByOldPeopleIdInfoData.getList());
            if(isLastPage){
                mLeaveAdapter.getLoadMoreModule().loadMoreEnd();
            }
        }else if (isLastPage){
            mLeaveAdapter.addData(selectAskForLeaveByOldPeopleIdInfoData.getList());
            mLeaveAdapter.getLoadMoreModule().loadMoreEnd();
        }else {
            mLeaveAdapter.addData(selectAskForLeaveByOldPeopleIdInfoData.getList());
            mLeaveAdapter.getLoadMoreModule().loadMoreComplete();
        }

    }


    @Override
    public void onRefresh() {
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                isfirst = true;
                loadMoreCount = 1;
                selectAskForLeaveByOldPeopleId(oldPeopleId, loadMoreCount+"");
            }
        },1);
    }

    private void initRecycleView( ArrayList<LeaveData> list) {
        if (isfirst){
            mLeaveAdapter.setNewData(list);
        }else {
            mLeaveAdapter.addData(list);
        }
        mLeaveAdapter.getLoadMoreModule().setOnLoadMoreListener(new OnLoadMoreListener() {
            @Override
            public void onLoadMore() {
                loadMoreCount++;
                isfirst = false;
                selectAskForLeaveByOldPeopleId(oldPeopleId, loadMoreCount+"");
            }
        });
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值