class MHandler extends Handler { public void dispatchMessage(Message msg) { super.dispatchMessage(msg); switch (msg.what) { case MSG_GOODS_OK: if (msg.obj != null) { String vlResult = (String) msg.obj; //解析获取的json数据 List<GoodsInfo> goodsInfos = getGoodsList(vlResult); adapter.setData(goodsInfos); } break;; } } private List<GoodsInfo> getGoodsList(String json) { Gson gson=new Gson();//使用Gson库解析json数据 //创建一个typeToken的匿名子类对象,并调用对象的getType()方法 Type listType=new TypeToken<List<GoodsInfo>>(){}.getType(); //把解析后的数据存放到集合goodsInfos中 List<GoodsInfo>goodsInfos=gson.fromJson(json,listType); return goodsInfos; }
时间: 2024-02-10 13:18:46 浏览: 75
Order_订餐系统_cn.itcast.order_android_安卓shoplistview_服务器_
5星 · 资源好评率100%
这段代码中的 getGoodsList() 方法是用来做什么的?
这段代码中的 getGoodsList() 方法是用来解析 JSON 数据的,将 JSON 字符串转换为 Java 对象的集合 List<GoodsInfo>。该方法首先创建了一个 Gson 对象,用于解析 JSON 数据。然后利用 Gson 对象的 fromJson() 方法将 JSON 字符串转换为指定类型的 Java 对象。这里采用了 TypeToken 类来获取 List<GoodsInfo> 的类型,使用匿名子类的方式来实现。最后将解析出来的 List<GoodsInfo> 对象返回给调用者。在 MHandler 的 dispatchMessage() 方法中,当收到 MSG_GOODS_OK 消息时,就会调用 getGoodsList() 方法来解析 JSON 数据,并将解析出来的 List<GoodsInfo> 对象传递给 adapter,用于更新列表中的数据。
阅读全文