private ListView lv;
private MyJson fromJson;
private int startNum=1;
private String pathSub1="http://www.93.gov.cn/93app/data.do?channelId=1&startNum=";
private String path=pathSub1+startNum;
public ArrayList<MyData> al=new ArrayList<MyData>();
private boolean isLoad;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=(ListView) findViewById(R.id.listview);
//设置listview的滚动到底部加载分页
lv.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
// isLoad为true就开始加载数据
if(isLoad&&scrollState==OnScrollListener.SCROLL_STATE_IDLE){
Toast.makeText(getApplicationContext(), "开始加载数据", 1).show();
startNum++;
path=pathSub1+startNum;
getData();
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
//记录当屏幕显示的条目数与总条目数相等就说明到底部了就为true
isLoad = ((firstVisibleItem+visibleItemCount)==totalItemCount);
}
});
//请求数据
getData();
}
private void getData() {
// TODO Auto-generated method stub
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
try {
HttpURLConnection conn =(HttpURLConnection) new URL(path).openConnection();
conn.setConnectTimeout(5000);
if(conn.getResponseCode() == 200){
fromJson = new Gson().fromJson(new InputStreamReader(conn.getInputStream()), MyJson.class);
al.addAll(fromJson.data);
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
protected void onPostExecute(Void result) {
MyListAdapter adapter=new MyListAdapter(MainActivity.this, al);
lv.setAdapter(adapter);
};
}.execute();
}
private MyJson fromJson;
private int startNum=1;
private String pathSub1="http://www.93.gov.cn/93app/data.do?channelId=1&startNum=";
private String path=pathSub1+startNum;
public ArrayList<MyData> al=new ArrayList<MyData>();
private boolean isLoad;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=(ListView) findViewById(R.id.listview);
//设置listview的滚动到底部加载分页
lv.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
// isLoad为true就开始加载数据
if(isLoad&&scrollState==OnScrollListener.SCROLL_STATE_IDLE){
Toast.makeText(getApplicationContext(), "开始加载数据", 1).show();
startNum++;
path=pathSub1+startNum;
getData();
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
//记录当屏幕显示的条目数与总条目数相等就说明到底部了就为true
isLoad = ((firstVisibleItem+visibleItemCount)==totalItemCount);
}
});
//请求数据
getData();
}
private void getData() {
// TODO Auto-generated method stub
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
try {
HttpURLConnection conn =(HttpURLConnection) new URL(path).openConnection();
conn.setConnectTimeout(5000);
if(conn.getResponseCode() == 200){
fromJson = new Gson().fromJson(new InputStreamReader(conn.getInputStream()), MyJson.class);
al.addAll(fromJson.data);
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
protected void onPostExecute(Void result) {
MyListAdapter adapter=new MyListAdapter(MainActivity.this, al);
lv.setAdapter(adapter);
};
}.execute();
}