簡體   English   中英

如何使用Retrofit解析json中的嵌套對象?

[英]How to parse nested objects in json using Retrofit?

這是reddit / r / pic / .json數據。 我想解析預覽對象並提取圖像URL。

{
"preview": {
"images": [
  {
    "source": {
      "url": "https://i.redditmedia.com/TIqBgNYhZaHMdHN61yUbFPDgDnsFCNkPi6Tb5p2Q-ac.png?s=9ee1ffdf902191de6be14972b7637866",
      "width": 772,
      "height": 762
    },
    "resolutions": [
      {
        "url": "https://i.redditmedia.com/TIqBgNYhZaHMdHN61yUbFPDgDnsFCNkPi6Tb5p2Q-ac.png?fit=crop&crop=faces%2Centropy&arh=2&w=108&s=2d74b9538ff6495f651ce8575baf46b5",
        "width": 108,
        "height": 106
      }
    ]
  }
 ]
}
}

您可以為這些字段使用POJOs

例:

在這里預覽是一個對象,但是圖像是一個數組/列表。

您可以像這樣創建一個源類

class Source {
    private String url;
    private int width;
    private int height;
}

您還可以看到resolutions數組使用與源類相同的鍵/字段,這將更便於解決

class Images {
    private Source source;
    private List<Soutrce> resolutions;
}

假設您有一個reddit類用於解析響應,則預覽將是

class Preview {
    private List<Images> images;
    // .. and some more fields if any
}

class Reddit {
    // ...above fields eg: over_18 and approved_by from your example
    private Preview preview;    
}

因此您的圖片將位於preview.images.get(0 /*position here*/).url;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM