package com.example.day3moni1;
import android.content.Intent;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import com.example.adapter.my1adapter;
import com.example.bean.news1bean;
import com.google.gson.Gson;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.conn.DefaultClientConnection;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class Second extends AppCompatActivity {
private ListView list_view1;
String url="http://www.xieast.com/api/news/news.php?page=2";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
list_view1 = findViewById(R.id.list_view1);
//异步解析
Myasync myasync = new Myasync();
myasync.execute(url);
}
public class Myasync extends AsyncTask<String,Integer,String>{
@Override
protected String doInBackground(String... params) {
DefaultHttpClient client = new DefaultHttpClient();
String path =params[0];
HttpGet get = new HttpGet(path);
try {
HttpResponse response = client.execute(get);
if(response.getStatusLine().getStatusCode()==200){
//从服务器获取输入流
InputStream inputStream = response.getEntity().getContent();
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = 0;
while ((len = inputStream.read(buffer)) != -1) {
bos.write(buffer, 0, len);
}
inputStream.close();
bos.close();
String json = bos.toString();
return json;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson gson = new Gson();
news1bean news1bean = gson.fromJson(s, news1bean.class);
final List<com.example.bean.news1bean.DataBean> data = news1bean.getData();
my1adapter my1adapter = new my1adapter(Second.this,data);
list_view1.setAdapter(my1adapter);
list_view1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(Second.this,data.get(i).getUrl(),0).show();
Intent intent = new Intent(Second.this, Three.class);
intent.putExtra("url", data.get(i).getUrl());
startActivity(intent);
finish();
}
});
}
}
}
HttpClient2
猜你喜欢
转载自blog.csdn.net/qq_42045179/article/details/80964680
今日推荐
周排行