import android.content.Intent;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.GridView;
import android.widget.Toast;
import com.google.gson.Gson;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import java.util.List;
public class Main2Activity extends AppCompatActivity {
private GridView grid_view;
private int cid;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
grid_view = findViewById(R.id.grid_view);
Intent intent = getIntent();
cid = intent.getIntExtra("cid", 0);
boolean conn = NewUtil.isConn(Main2Activity.this);
if(conn){
MyDemo myDemo=new MyDemo();
myDemo.execute("https://www.zhaoapi.cn/product/getProductCatagory"+"?"+"cid="+cid);
}else{
NewUtil.openNetDialog(Main2Activity.this);
}
}
class MyDemo extends AsyncTask<String, Void, Bean2> {
@Override
protected Bean2 doInBackground(String... strings) {
HttpClient client=new DefaultHttpClient();
HttpGet get=new HttpGet(strings[0]);
try {
HttpResponse response = client.execute(get);
int statusCode = response.getStatusLine().getStatusCode();
if(statusCode==200){
HttpEntity entity = response.getEntity();
String str = EntityUtils.toString(entity);
Gson gson=new Gson();
Bean2 bean2 = gson.fromJson(str, Bean2.class);
return bean2;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
protected void onPostExecute(Bean2 s) {
super.onPostExecute(s);
List<Bean2.DataBean> data = s.getData();
MyReadAdapter myReadAdapter=new MyReadAdapter(Main2Activity.this,data);
grid_view.setAdapter(myReadAdapter);
}
}
}
========================================================================================================================================================================================================================================================================
package com.bawie.com.zhoukaomoni;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
/**
* Created by Administrator on 2017/12/30 0030.
*/
public class MyReadAdapter extends BaseAdapter {
Context context; List<Bean2.DataBean> data;
public MyReadAdapter(Context context, List<Bean2.DataBean> data) {
this.context=context;
this.data=data;
}
@Override
public int getCount() {
return data.size();
}
@Override
public Object getItem(int i) {
return data.get(i);
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
ViewHolder holder;
if(view==null){
view = View.inflate(context,R.layout.read_view_layout,null);
holder=new ViewHolder();
holder.read_text=view.findViewById(R.id.read_text);
holder.read_image=view.findViewById(R.id.read_image);
view.setTag(holder);
}else{
holder = (ViewHolder) view.getTag();
}
holder.read_text.setText(data.get(i).getName());
MyPick myPick=new MyPick(holder.read_image);
myPick.execute(data.get(i).getList().get(i).getIcon());
return view;
}
class ViewHolder{
ImageView read_image;
TextView read_text;
}
class MyPick extends AsyncTask<String,Void,Bitmap>{
private ImageView imageView;
public MyPick(ImageView imageView) {
this.imageView = imageView;
}
@Override
protected Bitmap doInBackground(String... strings) {
try {
URL url=new URL(strings[0]);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setConnectTimeout(5000);
urlConnection.setReadTimeout(5000);
urlConnection.setRequestMethod("GET");
int responseCode = urlConnection.getResponseCode();
if(responseCode==200){
InputStream inputStream = urlConnection.getInputStream();
Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
return bitmap;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Bitmap bitmap) {
super.onPostExecute(bitmap);
if(bitmap==null){
imageView.setImageResource(R.drawable.ic_launcher_background);
}else{
imageView.setImageBitmap(bitmap);
}
}
}
}