解析数组json
2016-05-26 11:37
489 查看
<span style="font-size:18px;">public class MainActivity extends Activity { //定义全局变量 private ListView lv; String path = "http://172.17.29.120/localuser/ljy/datas/data.json"; private HttpResponse httpResponse; private List<Bean> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获得控件 lv = (ListView) findViewById(R.id.listView1); //开启一个线程 new Thread() { @Override public void run() { sendGet(); } }.start(); } //自定义适配器 class Myad extends BaseAdapter { private TextView tv1; private TextView tv2; private SmartImageView img; @Override public int getCount() { // TODO Auto-generated method stub return list.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return null; } @Override public long getItemId(int position) { // TODO Auto-generated method stub return 0; } @Override public View getView(int position, View convertView, ViewGroup parent) { convertView = View.inflate(MainActivity.this, R.layout.item, null); tv1 = (TextView) convertView.findViewById(R.id.textView1); tv2 = (TextView) convertView.findViewById(R.id.textView2); img = (SmartImageView) convertView.findViewById(R.id.imageView1); tv1.setText(list.get(position).title); tv2.setText(list.get(position).intro); img.setImageUrl(list.get(position).pic); return convertView; } } // 获取网络数据方法 public void sendGet() { HttpClient client = new DefaultHttpClient(); HttpGet get = new HttpGet(path); try { httpResponse = client.execute(get); if (httpResponse.getStatusLine().getStatusCode() == 200) { HttpEntity entity = httpResponse.getEntity(); String str = EntityUtils.toString(entity, "gbk"); Gson gson = new Gson(); Type tp = new TypeToken<ArrayList<Bean>>() { }.getType(); list = gson.fromJson(str, tp); runOnUiThread(new Runnable() { @Override public void run() { lv.setAdapter(new Myad()); } }); } } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }</span>
相关文章推荐
- JS加载器如何动态加载外部js文件
- JS设计模式之构造函数模式
- 汉字转换为拼音的JavaScript库
- JavaScript 基础
- JS中完美兼容各大浏览器的scrolltop方法
- Data获取字节数据,组成字符串出错 rapidjson解析出错
- JS中语句的另类写法。
- Javascript 严格模式详解
- js前台判断开始时间是否小于结束时间
- JS 学习计算器编写
- Web版 扫雷 JS实现
- 循环取到json中的字段数据,加到html中
- js 事件绑定函数与this的使用
- javascript删除元素节点
- jsp页面静态化
- JS遮罩插件 -- JqLoad
- js中函数学习笔记
- fileuploader.js 插件使用帮助
- Javascript水平提升
- 在jsp中获取已选中checkbox其他列的值