布局文件为SmartRefreshLayout包住展示控件
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/h_smartRefresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/h_recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.v7.widget.RecyclerView>
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
在Activity中设置上拉下拉
smart = view.findViewById(R.id.h_smartRefresh);
smart.setRefreshFooter(new BallPulseFooter(getActivity()).setSpinnerStyle(SpinnerStyle.Scale));
smart.setRefreshHeader(new MaterialHeader(getActivity()).setShowBezierWave(true));
然后监听事件
smart.setOnMultiPurposeListener(new SimpleMultiPurposeListener() {
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
super.onRefresh(refreshLayout);
page = 1;
handler.postDelayed(new Runnable() {
@Override
public void run() {
if (page < 7) {
presenter.sendParameter(search, page);
myAdapter.notifyDataSetChanged();
smart.finishRefresh(true);
Toast.makeText(getActivity(), "刷新成功!", Toast.LENGTH_SHORT).show();
}
}
}, 2000);
}
@Override
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
super.onLoadMore(refreshLayout);
page++;
handler.postDelayed(new Runnable() {
@Override
public void run() {
presenter.sendParameter(search, page);
myAdapter.notifyDataSetChanged();
smart.finishLoadMore(true);
Toast.makeText(getActivity(), "加载成功!", Toast.LENGTH_SHORT).show();
}
}, 2000);
}
});