package com.example.qizhiwei20170905; import android.os.AsyncTask; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; import com.google.gson.Gson; import com.nostra13.universalimageloader.core.ImageLoader; import java.io.ByteArrayOutputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import java.util.List; public class MainActivity extends AppCompatActivity { String path="https://api.tianapi.com/wxnew/?key=8d6e3228d25298f13af4fc40ce6c9679&num=10"; private ListView lv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lv = (ListView) findViewById(R.id.lv); new IntoData().execute(path); } class IntoData extends AsyncTask<String,Void,String>{ @Override protected void onPreExecute() { super.onPreExecute(); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson = new Gson(); JsonBean jsonBean = gson.fromJson(s, JsonBean.class); final List<JsonBean.NewslistBean> newslist = jsonBean.getNewslist(); lv.setAdapter(new BaseAdapter() { @Override public int getCount() { return newslist.size(); } @Override public Object getItem(int position) { return newslist.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHander viewHander; if (convertView==null){ viewHander=new ViewHander(); convertView=View.inflate(MainActivity.this,R.layout.item1,null); viewHander.iv = (ImageView) convertView.findViewById(R.id.iv); viewHander.tv1= (TextView) convertView.findViewById(R.id.tv1); viewHander.tv2= (TextView) convertView.findViewById(R.id.tv2); convertView.setTag(viewHander); }else { viewHander = (ViewHander) convertView.getTag(); } ImageLoader.getInstance().displayImage(newslist.get(position).getPicUrl(),viewHander.iv); viewHander.tv1.setText(newslist.get(position).getTitle()); viewHander.tv2.setText(newslist.get(position).getCtime()); return convertView; } class ViewHander{ ImageView iv; TextView tv1; TextView tv2; } }); } @Override protected void onProgressUpdate(Void... values) { super.onProgressUpdate(values); } @Override protected String doInBackground(String... params) { ByteArrayOutputStream outputStream = null; try { URL url = new URL(params[0]); HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); urlConnection.setRequestMethod("GET"); urlConnection.setConnectTimeout(5000); int responseCode = urlConnection.getResponseCode(); outputStream = new ByteArrayOutputStream(); if (responseCode==200){ InputStream inputStream = urlConnection.getInputStream(); byte[] b=new byte[1024]; int i; while ((i=inputStream.read(b))!=-1){ outputStream.write(b,0,i); } } } catch (Exception e) { e.printStackTrace(); } return outputStream.toString(); } } }
我也不知道是啥
最新推荐文章于 2021-10-22 13:58:26 发布