package com.bawei.day3_30.frag;
import android.os.Handler;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.View;
import com.bawei.day3_30.R;
import com.bawei.day3_30.adapter.MyAdapter;
import com.bawei.day3_30.adapter.onLoadMoreListener;
import com.bawei.day3_30.base.BaseFragment;
import com.bawei.day3_30.bean.Show;
import com.bawei.day3_30.presenter.ShowPresenter;
import com.bawei.day3_30.view.ShowView;
import java.util.ArrayList;
import java.util.List;
lic class Fragment1 extends BaseFragment implements ShowView {
private Handler handler = new Handler();
private int page =1;
private RecyclerView recy;
private ShowPresenter showPresenter;
private SwipeRefreshLayout swip;
private List<Show> list;
@Override
protected int layoutResID() {
return R.layout.fragment1;
}
@Override
protected void initView(View view) {
recy = view.findViewById(R.id.recy);
swip = view.findViewById(R.id.swip);
}
@Override
protected void initData() {
//布局管理器
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext());
recy.setLayoutManager(linearLayoutManager);
showPresenter = new ShowPresenter(this);
showPresenter.sendParameter(page+".json");
swip.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
page=1;
showPresenter.sendParameter(page+".json");
handler.postDelayed(new Runnable() {
@Override
public void run() {
swip.setRefreshing(false);
}
},2000);
}
});
recy.addOnScrollListener(new onLoadMoreListener() {
@Override
protected void onLoading(int countItem, int lastItem) {
page++;
showPresenter.sendParameter(page+".json");
handler.postDelayed(new Runnable() {
@Override
public void run() {
swip.setRefreshing(false);
}
},6000);
}
});
}
@Override
protected void loadData() {
Log.i("xxx", "loadData: 1");
}
@Override
public void onShow(List<Show> data) {
//分页
if (page==1){
list = new ArrayList<>();
}
list.addAll(data);
MyAdapter myAdapter = new MyAdapter(getContext(), list);
recy.setAdapter(myAdapter);
recy.scrollToPosition(myAdapter.getItemCount()-data.size()-1);
}
}