加入依赖
compile 'com.liaoinstan.springview:library:1.3.0'
compile 'com.android.support:recyclerview-v7:25.3.1'
recyclerview布局的代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
<com.liaoinstan.springview.widget.SpringView
android:layout_width="match_parent"
android:id="@+id/springview"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/recyclerview" >
</android.support.v7.widget.RecyclerView>
</com.liaoinstan.springview.widget.SpringView>
</LinearLayout>
代码里面的
public class LieBiaoFragment extends Fragment{
private SpringView springView;
private RecyclerView recyclerView;
private RecyAdapter recyAdapter;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_liebiao,container,false);
springView = (SpringView) view.findViewById(R.id.springview);
recyclerView = (RecyclerView) view.findViewById(R.id.recyclerview);
return view;
}
int page = 0;
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
recyAdapter = new RecyAdapter(getActivity());
LinearLayoutManager manager = new LinearLayoutManager(getActivity(),LinearLayoutManager.VERTICAL,false);
recyclerView.setLayoutManager(manager);
//进入页面访问数据
getData();
springView.setHeader(new DefaultHeader(getActivity()));
springView.setFooter(new DefaultFooter(getActivity()));
springView.setListener(new SpringView.OnFreshListener() {
@Override
public void onRefresh() {
page ++;
getData();
springView.onFinishFreshAndLoad();
}
@Override
public void onLoadmore() {
page = 0;
getData();
springView.onFinishFreshAndLoad();
}
});
}
//
public void getData(){
final String path = "http://tingapi.ting.baidu.com/v1/restserver/ting?method=baidu.ting.billboard.billList&type=1&size=10&offset="+page;
OkhttpUtils.getInstance().asy(null, path, new AbstractUiCallBack<RecyBean>() {
@Override
//abstractUiCallBack的接口回调
public void success(RecyBean bean) {
//获取数据 .调用适配器中的添加数据的方法,,刷新添加到前面
recyAdapter.addData(bean.getSong_list());
recyclerView.setAdapter(recyAdapter);
}
@Override
public void failure(Exception e) {
Toast.makeText(getActivity(),"e:"+e,Toast.LENGTH_SHORT).show();
}
});
}
}