package wss.com.day15;
import android.content.ContentValues;
import android.database.Cursor;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.Toast;
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;
import wss.com.day15.adapter.MyAdapter;
import wss.com.day15.dao.Dao;
public class MainActivity extends AppCompatActivity {
private PullToRefreshListView listview;
private String urlString="http://api.tianapi.com/meinv/?key=3304a8bc9414f97e30928b80163cf098&num=10";
private ArrayList<ShowBean.NewslistBean> list = new ArrayList<>();
private MyAdapter mylist;
int a=0;
private Dao dao;
private long insert;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dao = new Dao(MainActivity.this);
//获取资源id
listview = findViewById(R.id.main_listview);
listview.setMode(PullToRefreshBase.Mode.BOTH);
if(NetWorkUtils.requestIntenttype(MainActivity.this)){
Toast.makeText(MainActivity.this,"有网",+0).show();
//设置适配器
mylist = new MyAdapter(MainActivity.this,list);
listview.setAdapter(mylist);
getData(0);
listview.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
list.clear();
getData(a);
a=0;
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> pullToRefreshBase) {
a++;
getData(a);
}
});
}else{
Toast.makeText(MainActivity.this,"没网",+0).show();
//查询数据库
Cursor query = dao.query("day15", null, null, null, null, null, null);
if (query.moveToFirst()) {
do {
/*private String ctime;
private String title;
private String description;
private String picUrl;
private String url;*/
String ctime = query.getString(query.getColumnIndex("ctime"));
String title = query.getString(query.getColumnIndex("title"));
String description = query.getString(query.getColumnIndex("description"));
String picUrl = query.getString(query.getColumnIndex("picUrl"));
String url = query.getString(query.getColumnIndex("url"));
ShowBean.NewslistBean bean=new ShowBean.NewslistBean();
bean.setCtime(ctime);
bean.setTitle(title);
bean.setDescription(description);
bean.setPicUrl(picUrl);
bean.setUrl(url);
list.add(bean);
mylist = new MyAdapter(MainActivity.this,list);
listview.setAdapter(mylist);
}while (query.moveToNext());
}
query.close();
mylist.notifyDataSetChanged();
}
}
private void getData(int a) {
new MyAsTask().execute(urlString+a);
}
class MyAsTask extends AsyncTask<String,Void,String>{
@Override
protected String doInBackground(String... strings) {
return NetWorkUtils.getJson(strings[0]);
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson gson= new Gson();
ShowBean showBean = gson.fromJson(s, ShowBean.class);
List<ShowBean.NewslistBean> newslist = showBean.getNewslist();
for (int i = 0; i < newslist.size(); i++) {
ContentValues values = new ContentValues();
/*private String ctime;
private String title;
private String description;
private String picUrl;
private String url;*/
values.put("ctime",newslist.get(i).getCtime());
values.put("title",newslist.get(i).getTitle());
values.put("description",newslist.get(i).getDescription());
values.put("picUrl",newslist.get(i).getPicUrl());
values.put("url",newslist.get(i).getUrl());
insert = dao.insert("day15", null, values);
}
Toast.makeText(MainActivity.this,""+insert,+0).show();
list.addAll(newslist);
mylist.notifyDataSetChanged();
listview.onRefreshComplete();
}
}
}