/************************/--------> MainActivity 类:
package com.wlxstq;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
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 android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.widget.GridView;
import com.google.gson.Gson;
import com.wlxstq.adapter.MyAdapter;
import com.wlxstq.bean.Saishi;
public class MainActivity extends Activity {
private Saishi tianqiyubao;
private GridView gridView;
private String path;
//线程handler
Handler handler = new Handler() {
public void handleMessage(android.os.Message msg) {
if (msg.what == 0) {
String aaa = (String) msg.obj;
// gson解析
Gson gson = new Gson();
tianqiyubao = gson.fromJson(aaa, Saishi.class);
// 设置适配器
gridView.setAdapter(new MyAdapter(MainActivity.this,
tianqiyubao));
Log.i("zhangsan", tianqiyubao.result.list.size()
+ "!!!!!!!!!!!!!");
}
};
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 寻找控件id
gridView = (GridView) findViewById(R.id.gridView);
// 封装一个方法
Saishi();
}
private void Saishi() {
new Thread(new Runnable() {
@Override
public void run() {
try {
// 获取路径
path = "http://op.juhe.cn/onebox/basketball/nba?key=d5e585d5f720bb748a64f17a0119efe7";
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(path);
HttpResponse httpResponse = httpClient.execute(httpGet);
int statusCode = httpResponse.getStatusLine()
.getStatusCode();
// 判断
if (statusCode == 200) {// 请求成功
InputStream inputStream = httpResponse.getEntity()
.getContent();
String str = streamTask(inputStream);
// handler
Message msg = Message.obtain();
msg.obj = str;
msg.what = 0;
// 传
handler.sendMessage(msg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
}
/**
* 帮助类
*
* @param inputStream
* @return
* @throws IOException
*/
private String streamTask(InputStream inputStream) throws IOException {
ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = 0;
while ((len = inputStream.read(buffer)) != -1) {
arrayOutputStream.write(buffer, 0, len);
}
return arrayOutputStream.toString();
}
}
/******************************/------> MyAdapter 类:
package com.wlxstq.adapter;
import java.util.ArrayList;
import com.lidroid.xutils.BitmapUtils;
import com.wlxstq.R;
import com.wlxstq.bean.Saishi;
import com.wlxstq.bean.Saishi.Tr;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class MyAdapter extends BaseAdapter {
private Context context;
private ImageView imageView;
private TextView textView;
@SuppressWarnings("unused")
private Saishi saishi;
private ArrayList<Tr> tr;
public MyAdapter(Context context, Saishi saishi) {
// //
this.context = context;
this.saishi = saishi;
tr = saishi.result.list.get(0).tr;
}
public int getCount() {
return tr.size();
}
public Object getItem(int position) {
return tr.get(position);
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
// 充气
View view = View.inflate(context, R.layout.item, null);
// 寻找控件id
imageView = (ImageView) view.findViewById(R.id.imageView_item);
textView = (TextView) view.findViewById(R.id.textView_item);
// 设置
BitmapUtils bm = new BitmapUtils(context);
bm.display(imageView, tr.get(position).player1logo);
textView.setText(tr.get(position).player1);
return view;
}
}
/*******************************/--------> Saishi Bean类 自己根据情况而定,需要什么就写什么
package com.wlxstq.bean;
import java.util.ArrayList;
public class Saishi {
public String error_code;---->对象
public String reason;---->对象
public Result result;---->对象
public class Result {
public String title;---->对象
public ArrayList<Meizi> list;------->集合
}
public class Meizi {
public ArrayList<Tr> tr;------->集合
}
public class Tr {
public String player1;---->对象
public String player1logo;---->对象
public String time;---->对象
}
}