package com.bwie.day100.fragement.channel;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import com.bwie.day100.R;
import com.bwie.day100.adapter.MyAdapter;
import com.bwie.day100.bean.NewsBeans;
import com.bwie.day100.net.HttpUtils;
import com.google.gson.Gson;
import com.handmark.pulltorefresh.library.PullToRefreshBase;
import com.handmark.pulltorefresh.library.PullToRefreshListView;
import java.util.ArrayList;
import java.util.List;
/**
* A simple {@link Fragment} subclass.
*/
public class Channel2Fragment extends Fragment {
private static final String TAG =Channel2Fragment.class.getSimpleName() ;
private PullToRefreshListView pullToRefreshListView;
private HttpUtils httpUtils;
private LoadData1 loadData1=new LoadData1();
private String api="http://gank.io/api/data/iOS/20/";
private int page=1;
private List<NewsBeans.ResultsBean> list=new ArrayList<>();
private MyAdapter adapter;
public Channel2Fragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_channel2, container, false);
pullToRefreshListView = view.findViewById(R.id.pull_list);
return view;
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
pullToRefreshListView.setMode(PullToRefreshBase.Mode.BOTH);
pullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
page=1;
httpUtils.get(loadData1,api+page);
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
page++;
httpUtils.get(loadData1,api+page);
}
});
httpUtils = HttpUtils.getInstance();
httpUtils.get(loadData1,api+page);
}
class LoadData1 implements HttpUtils.NetCallBack{
@Override
public void onSucces(String s) {
Log.d(TAG,"璇锋眰鐨勬暟鎹細"+s);
Gson gson=new Gson();
NewsBeans newsBeans = gson.fromJson(s, NewsBeans.class);
if (page==1){
adapter = new MyAdapter(getActivity(), list);
pullToRefreshListView.setAdapter(adapter);
list.clear();
}
list.addAll(newsBeans.getResults());
adapter.notifyDataSetChanged();
pullToRefreshListView.onRefreshComplete();
}
@Override
public void onError(String s) {
}
}
}
封装utils类的使用
最新推荐文章于 2024-06-28 00:18:02 发布