private class MyAsyncTask extends AsyncTask<String,Void,String>{
//耗时操作
@Override
protected String doInBackground(String... strings) {
try {
//创建url
URL url = new URL("http://www.xieast.com/api/news/news.php?page=2");
//打开链接
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
//设置请求方法
urlConnection.setRequestMethod("GET");
//读取超时
urlConnection.setReadTimeout(5000);
//连接超市
urlConnection.setConnectTimeout(5000);
if (urlConnection.getResponseCode()==200){
//得到输入流
InputStream stream = urlConnection.getInputStream();
//得到请求的数据
BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
StringBuilder builder = new StringBuilder();
String str = "";
while ((str=reader.readLine())!=null){
builder.append(str);
}
return builder.toString();
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
//主线程 接受耗时操作传来的值
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson gson = new Gson();
JsonBean jsonBean = gson.fromJson(s, JsonBean.class);
ArrayList<Step> data = jsonBean.getData();
Myadapter myadapter = new Myadapter(getActivity(),data);
listView.setAdapter(myadapter);
}