问题描述
- Json解析后绑定到ListView
-
最近在做项目,碰到的问题,需要将服务器返回的结果进行json解析然后将其绑定到ListView上,我的json解析代码如下:public ArrayList<HashMap<String, String>> analyzeJson(String responseBody, String arrayName, String objName) throws Exception { JSONObject json = new JSONObject(responseBody); JSONArray jArray = json.getJSONArray(arrayName); if (keys != null && values != null) { ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>(); for (int i = 0; i < jArray.length(); i++) { HashMap<String, String> map = new HashMap<String, String>(); JSONObject e = jArray.getJSONObject(i); String s = e.getString(objName); JSONObject jObject = new JSONObject(s); for (int j = 0; j < keys.length; j++) { map.put(keys[j], jObject.getString(values[j])); } mylist.add(map); } } return null; }
这样写 返回的list 直接可以用于simpleAdapter 中,以上方法在获取非图片查询结果时可以通用,问题是查询的内容有图片,图片在服务器中是以地址的形式存储的,json解析出来的是图片的URL, 要想获取图片还需要根据URL去获取图片,这个时候就不是一个通用的方法, 我现在想做一个通用的解析json的方法,但不知道如何设计,求指点。 像微信好友列表的图片在服务器端是以地址形式存储的?
解决方案
adapter中getView中根据图片地址下载图片 ImageView设置图片
解决方案二:
图片在客户端当然是以地址的形式存储的,难道用2进制流?想不出任何理由用2进制流,百害无一利
解决方案三:
可以通过ImageView控件的setImageResource的方法转换
时间: 2024-10-03 09:00:42