我正在使用一个API,它给我一个JSON响应。从这个JSON中我创建了模型类。在这些类中。这些是我的模型类。
class Json3(
val result : Result3){}
class Result3(
val pic1:String,
val item_name:String,
val shop_name: String,
val item_size:List<ItemSize>,
val item_description:String,
val price:String ){}
class ItemSize(
val name:String,
val value:String){}
我想从项目大小中访问名称和值并打印它们。我怎样才能用一个循环来实现这个目标?
这是我的JSON。
{"result": {
"product_id": 283946,
"shop_rating": 5,
"shop_reviews_count": 476,
"occasion_id": 94,
"section_id": 1,
"section": "Flower",
"pickup": false,
"preparation_time": "0 mins",
"is_favorite": false,
"item_sold_by": "Quantity",
"item_size": [
"name": "Height",
"value": "29cm"
"name": "Width",
"value": "52cm"
我想从item_size中获取数值,并在一些循环的帮助下打印出这样的东西。高度:29厘米/宽度:52厘米。这是我到目前为止所尝试的。当我把它设置为 itemsizename 时,我只得到最后的名字和值。
但是我想从数组中得到所有的名字和值。比如说。高度:29厘米/宽度:52厘米和长度(如果它将进一步可用)。
val obj = JSONObject(json)
val getObject = obj.getJSONObject("result")
val getArray = getObject.getJSONArray("item_size")
val obj = JSONObject(json)
val getObject = obj.getJSONObject("result")
val getArray = getObject.getJSONArray("item_size")
for (i in 0 until getArray.length()) {
val objects: JSONObject = getArray.getJSONObject(i)
val parameter = objects["name"].toString()
val parameterValue = objects["value"].toString()
itemsizename.text = parameter + ": " + parameterValue }