public class SheHuiFragment extends Fragment implements XListView.IXListViewListener {
// ?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=10
private static final String TAG = "SheHuiFragment----";
private XListView shehui_listview;
private int page = 10;
private static List<SheHuiBean.NewslistBean> newslist = new ArrayList<>();
private MyAdapter myAdapter;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fg_shehui_layout, null);
shehui_listview = view.findViewById(R.id.shehui_listview);
shehui_listview.setPullLoadEnable(true);
shehui_listview.setPullRefreshEnable(true);
//设置监听
shehui_listview.setXListViewListener(this);
return view;
}
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
myAdapter = new MyAdapter(getActivity(), newslist);
shehui_listview.setAdapter(myAdapter);
//请求网络
getDataFromNet();
}
private void getDataFromNet() {
HttpUtils instance = HttpUtils.getInstance();
instance.get(HttpConfig.SHEHUI_URL + "?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=" + page);
Log.d(TAG, "请求也---: " + page);
instance.setHttpUtilsListener(new HttpUtils.HttpUtilListener() {
@Override
public void getSuccess(String json) {
Log.d(TAG, "getSuccess: " + json);
Gson gson = new Gson();
SheHuiBean sheHuiBean = gson.fromJson(json, SheHuiBean.class);
//设置适配器
List<SheHuiBean.NewslistBean> newslist1 = sheHuiBean.getNewslist();
//判断是初次加载,还是刷新,还是上啦加载更多
//这里的参数不是page 而是数据的数量,所以每次得清一下。
// if (page == 10) {
newslist.clear();
shehui_listview.stopRefresh();
// }
newslist.addAll(newslist1);
//刷新数据
myAdapter.notifyDataSetChanged();
shehui_listview.stopLoadMore();
}
@Override
public void getError(String error) {
Log.d(TAG, "getError: " + error);
}
});
}
//刷新
@Override
public void onRefresh() {
page = 10;
getDataFromNet();
}
//加载更多
@Override
public void onLoadMore() {
page += 10;
getDataFromNet();
}
// ?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=10
private static final String TAG = "SheHuiFragment----";
private XListView shehui_listview;
private int page = 10;
private static List<SheHuiBean.NewslistBean> newslist = new ArrayList<>();
private MyAdapter myAdapter;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fg_shehui_layout, null);
shehui_listview = view.findViewById(R.id.shehui_listview);
shehui_listview.setPullLoadEnable(true);
shehui_listview.setPullRefreshEnable(true);
//设置监听
shehui_listview.setXListViewListener(this);
return view;
}
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
myAdapter = new MyAdapter(getActivity(), newslist);
shehui_listview.setAdapter(myAdapter);
//请求网络
getDataFromNet();
}
private void getDataFromNet() {
HttpUtils instance = HttpUtils.getInstance();
instance.get(HttpConfig.SHEHUI_URL + "?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=" + page);
Log.d(TAG, "请求也---: " + page);
instance.setHttpUtilsListener(new HttpUtils.HttpUtilListener() {
@Override
public void getSuccess(String json) {
Log.d(TAG, "getSuccess: " + json);
Gson gson = new Gson();
SheHuiBean sheHuiBean = gson.fromJson(json, SheHuiBean.class);
//设置适配器
List<SheHuiBean.NewslistBean> newslist1 = sheHuiBean.getNewslist();
//判断是初次加载,还是刷新,还是上啦加载更多
//这里的参数不是page 而是数据的数量,所以每次得清一下。
// if (page == 10) {
newslist.clear();
shehui_listview.stopRefresh();
// }
newslist.addAll(newslist1);
//刷新数据
myAdapter.notifyDataSetChanged();
shehui_listview.stopLoadMore();
}
@Override
public void getError(String error) {
Log.d(TAG, "getError: " + error);
}
});
}
//刷新
@Override
public void onRefresh() {
page = 10;
getDataFromNet();
}
//加载更多
@Override
public void onLoadMore() {
page += 10;
getDataFromNet();
}