我正在尝试将jsonobject放在jsonarray中以便我可以显示所选项目。我尝试了但值正在覆盖。请帮忙
if(myPrefs.getInt("product"+productBean.getProductId() + productBean.getSkuId1(),0)<10) {
qtyValues = myPrefs.getInt("product" + productBean.getProductId() + productBean.getSkuId1(), 0);
qtyValues = qtyValues + 1;
editor.putInt("product" + productBean.getProductId() + productBean.getSkuId1(), qtyValues);
editor.commit();
holder.qtyCounter.setText(myPrefs.getInt("product" + productBean.getProductId() + productBean.getSkuId1(), 0) + "");
value = productBean.getProductPrice();
add(addItem);
amount(value);
System.out.println("ProductAdapter.isSKU------------========================" + ProductAdapter.isSKU);
setCartItem(productBean.getSkuId1(),myPrefs.getInt("product" + productBean.getProductId() + productBean.getSkuId1(), 0),productBean.getProductId(),productBean.getDescription() , productBean.getProductName() , productBean.getProductPrice());
}
jsonObject = new JSONObject();
try {
jsonObject.put("skuId",skuId);
jsonObject.put("quantity",qty);
jsonObject.put("productId",productId);
jsonObject.put("price",price);
jsonObject.put("productName",productName);
jsonObject.put("description",description);
editor.putString("data",jsonObject.toString());
editor.commit();
}catch (JSONException e){
e.printStackTrace();
}
答案 0 :(得分:0)
你应该把你的jsonObject放在像这样的jsonArray中
JSONArray jsonArray = new JSONArray();
jsonArray.put(jsonObj);
我认为您正在使用putString
编辑:如何从jsonArray获取jsonObjects
JSONArray对象有一个函数getJSONObject(int index)
,您可以通过编写一个简单的for循环遍历所有JSONObject:
JSONArray array;
for(int i = 0; i < array.length(); i++)
{
JSONObject object = array.getJSONObject(i);
// do your stuff....
}