package com.example.zhoukaosan;
import android.content.ContentValues;
import android.database.Cursor;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.Toast;
import com.bwie.xlistviewlibrary.utils.NetWordUtils;
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;
public class Frag11 extends Fragment {
private PullToRefreshListView review;
private int a;
private String urlString = “http://api.tianapi.com/meinv/?key=3304a8bc9414f97e30928b80163cf098&num=10”;
private List<Bean.NewslistBean> list = new ArrayList<>();
private MyReAdapter adapter;
private Dao dao;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.frag11,container,false);
review = view.findViewById(R.id.refresh);
review.setMode(PullToRefreshBase.Mode.BOTH);
review.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
a=0;
list.clear();
getData(a);
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
a++;
getData(a);
}
});
if (NetWork.getNet(getActivity())) {
Toast.makeText(getActivity(),"有网,嗯",+1).show();
adapter = new MyReAdapter(getActivity(),list);
review.setAdapter(adapter);
getData(a);
}else{
Toast.makeText(getActivity(),"没网,嗯",+1).show();
dao = new Dao(getActivity());
Cursor query = dao.query("shu", null, null, null, null, null, null);
if(query.moveToFirst()){
do {
String title = query.getString(query.getColumnIndex("title"));
String url = query.getString(query.getColumnIndex("url"));
Bean.NewslistBean bean = new Bean.NewslistBean();
bean.setCtime(null);
bean.setDescription(null);
bean.setPicUrl(null);
bean.setTitle(title);
bean.setUrl(url);
list.add(bean);
}while (query.moveToNext());
}
review.setAdapter(new MyAdapter(getActivity(),list));
}
if (NetWork.getNet(getActivity())){
getData(0);
}
dao = new Dao(getActivity());
return view;
}
private void getData(int a) {
new MyStack().execute(urlString);
}
private class MyStack extends AsyncTask<String,Void,String> {
@Override
protected String doInBackground(String... strings) {
String s = NetWordUtils.getNetjson(strings[0]);
return s;
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson gson = new Gson();
Bean bean = gson.fromJson(s, Bean.class);
List<Bean.NewslistBean> newslist = bean.getNewslist();
for (int i = 0; i < newslist.size(); i++) {
ContentValues contentValues = new ContentValues();
contentValues.put("title",newslist.get(i).getTitle());
contentValues.put("url",newslist.get(i).getUrl());
dao.insert("shu",null,contentValues);
}
list.addAll(newslist);
adapter.notifyDataSetChanged();
review.onRefreshComplete();
}
}
}