在调用时使用: new NewsAsyncTask().execute(URL);
//实现网络的异步访问
//1.string请求网址2.记录中间过程3.返回的json被解析得到的List<>;
class NewsAsyncTask extends AsyncTask<String, Void,List<NewsBean> >{
//处理后台执行的任务,在后台线程执行
@Override
protected List<NewsBean> doInBackground(String... params) {
//params:请求网址
// TODO Auto-generated method stub
return getJsonData(params[0]);//返回一个List<>,而后被onPostExecute()调用;
}
// 后台任务执行完之后被调用,在ui线程执行
@Override
protected void onPostExecute(List<NewsBean> newsBeans) {
// TODO Auto-generated method stub
super.onPostExecute(newsBeans);
NewsAdapter adapter = new NewsAdapter(MainActivity.this,newsBeans);
mListView.setAdapter(adapter);
}
// 在doInBackground(Params...)之前被调用,在ui线程执行
protected void onPreExecute() {
super.onPreExecute();
}
// 在ui线程执行
protected void onCancelled() {
super.onCancelled();
}
}