有个简单的,就是你直接使string然后把它new JSONobject 然后使用迭代器,for循环,然后就不用管什么value key 直接输出存成string就行。或是拼接。这样就不需要大量的 *** 作几行代码即可。
本地数据就用ormlite-android-419jar和ormlite-core-419jar 可以帮助你管理本地数据,网络上的数据应该要后台做接口让你去调用,adapter可以写一个方法addpendList或者setList,这两个方法都是控制当前adapter持有的list的,adapter可以持有这个list并且给每个item设置布局。
本地得到的数据就是List,如果是服务器的数据就是JSON格式,可以用JSONUtiljava之类的去解析然后获取list,不是list的数据就直接resgetString("name");
ListViewSetAdapter();就可以设置adapter了,然后adapter如果有数据就会填充List
刷新的话是adapternotifyDataSetChanged();
不知道你是不是这意思
JSONArray jsonArr=JSONArrayfromObject(list);
Systemoutprintln(jsonArr);
outprint(jsonArr);
// outprint(job);
FastJsonTools 类写好了吗?既然返回的是list,那加到listview还不简单。
ListView mListView = (ListView)findViewById(Ridlistview);
SimpleAdapter mAdapter = new SimpleAdapter(this,mList,Rlayoutitem,mFrom,mTo);
mListViewsetAdapter(mAdapter);
Rlayoutitem是你自定义的listview
mFrom 是你的map里面的key值,mTo是你要显示的内容放置到的具体控件(前后要对应)
这样应该就可以了。
不过你的代码有很大的问题,获取网络数据必须在子线程,也就是你要新开一个子线程去实现
String jsonString = >
json串对于C#来说,只是string类型的字符串, 字符串你是没办法很简单的按某个逻辑去处理的。
要先把Json转成C#识别的对象,然后针对此对象进行 *** 作。
反序列化有很多方法,
如:
using SystemWebScriptSerialization;public class JsonHelper
{
public static T Deserializer<T>(string json)
{
var js = new JavaScriptSerializer();
return jsDeserialize<T>(json);
}
}
比如你的这个串,对应C#里就是一个类型:
public class series{
public string name{set;get;}
public KeyValuePair<string,string> columns{set;get;}
public KeyValuePair<string,string> values {set;get;}
}
你需要先把json转成一个series 或者 List<series>,
如
var results = JsonHelperDeserializer<series>(jsonStr);然后对这个对象进行取值 *** 作,
如
string myValue = resultsvalueValue ;//第一个小写的value是属性名称,
//value是个键值对, 键值对的值是Value
//就可以取到你要的14
以上就是关于Android 怎样将一组json数据的key value对应的放入到listview中显示两列全部的内容,包括:Android 怎样将一组json数据的key value对应的放入到listview中显示两列、如何把获取的数据显示在listview上、从数据库中获取list集合的数据如何用json进行打印等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)