复杂JSON解析

数据接口:http://i.dxy.cn/snsapi/home/feeds/list/all?sid=4df0360f-2a20-4198-beb8-4dc5660c4f08&u=zhetianyishou&s=10&mc=0000000049029dcaffffffff99d603a9&token=TGT-13165-buaw5fHpqLlefw9bSOB0oF41fobaV4rMZmK-50&hardName=iToolsAVM_T0008098S&ac=4124c5f1-2029-4fda-b06f-a87ac5ad8d11&bv=2013&vc=6.0.6&tid=c25e673d-e82a-4e46-bd4e-c1e86d497126&vs=4.4.4&ref_tid=54720e1a-7eed-4993-9f51-3d760f3d0b2e

比如说json串中,键值对串:boy:"在这你面object对象、数组形式(是个json串)"

如果解析你面串首先做如下几个操作:

private void getDatasi() {
        // TODO Auto-generated method stub
        HttpUtils httpUtils = new HttpUtils();
        httpUtils.send(HttpMethod.GET, path, new RequestCallBack<String>() {

            @Override
            public void onFailure(HttpException arg0, String arg1) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onSuccess(ResponseInfo<String> arg0) {
                // TODO Auto-generated method stub
                String json = arg0.result;
                Gson gson = new Gson();
                LVBean lvb = gson.fromJson(json, LVBean.class);
                ArrayList<com.example.week3.bean.LVBean.Items> items = lvb.items;
                ArrayList<com.example.week3.bean.Content> ac = new ArrayList<Content>();
                Content cc =null;
                for (int i = 0; i < items.size(); i++) {
                    cc = new Content();
                     String content = items.get(i).content;
                     Content content1 = gson.fromJson(content, Content.class);
                     cc.body = content1.body;
                     ac.add(cc);
                }
                LV_Adapter adapter = new LV_Adapter(ac,getApplicationContext());
                lv.setAdapter(adapter);

            }
        });
    }

两个ben包:


package com.example.week3.bean;

import java.util.ArrayList;

public class LVBean {

	public ArrayList<Items> items;

	public class Items {
		public String infoUsername;
		public String infoAvatar;
		public String content;

	}
}

package com.example.week3.bean;

public class Content {
	 public String body;
	 
}

设置配器

package com.example.week3.adpter;

import java.util.ArrayList;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

import com.example.week3.R;

public class LV_Adapter extends BaseAdapter {

	private ArrayList<com.example.week3.bean.Content> ac;
	private Context context;



	public LV_Adapter(ArrayList<com.example.week3.bean.Content> ac,
			Context context) {
		super();
		this.ac = ac;
		this.context = context;
	}


	@Override
	public int getCount() {
		// TODO Auto-generated method stub
		return ac.size();
	}

	@Override
	public Object getItem(int arg0) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public View getView(int arg0, View arg1, ViewGroup arg2) {
		// TODO Auto-generated method stub
		View view = View.inflate(context, R.layout.lv_item1, null);
		TextView tv = (TextView) view.findViewById(R.id.tv_name);
		tv.setText(ac.get(arg0).body);//.substring(0, 10)
		return view;
	}

	@Override
	public long getItemId(int arg0) {
		// TODO Auto-generated method stub
		return 0;
	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值