2015-04-06 13 views
5

Ich habe ein Objekt wie dieses:Retrofit + Gson Deserializer

"choice": { 
    "000": { 
      "id": "001", 
      "label": "test", 
      "status": "0" 
    }, 
    "001": { 
      "id": "001", 
      "label": "test", 
      "status": "0" 
    }, 
    "002": { 
      "id": "001", 
      "label": "test", 
      "status": "0" 
    }, 
    "003": { 
      "id": "001", 
      "label": "test", 
      "status": "0" 
    }, 
    "004": { 
      "id": "001", 
      "label": "test", 
      "status": "0" 
    } 
    }, 

Wie kann ich das Objekt mit Gson + Retrofit analysieren? Oder ein POJO generieren? Es gibt eine einfache Möglichkeit, dies zu tun?

Vielen Dank!

Antwort

3

Die Idee, dass alles, was Sie bei der Wahl json bezwecken ist Karte:

public class RootObject{ 
    Map <String,ChoiceEntry> choice; 
} 

public class ChoiceEntry{ 
    String id; 
    String label; 
    int status; 
} 
+0

Schön, es funktioniert. Das ist eine elegante Lösung. Danke – Chronos

+0

@Chronos können Sie upvote und markiert als beantwortet :) – x90

+0

Auch Sie können Ihre Frage bearbeiten und 'Karte' 'serialisieren' gson 'Schlüsselwörter zur Verfügung stellen, um Ihre Frage und meine Antwort mehr erreichbar für andere Leute mit dem gleichen Problem zu machen. – x90

2

Sie eine POJO erstellen können durch Einfügen dass JSON-Code in diesen Link: http://pojo.sodhanalibrary.com/.

Sie haben ein Snippet veröffentlicht, das nicht richtig formatiert ist. Ich glaube, du wirst ein POJO mit mehreren Klassen haben, und das ist schwierig für bestimmte Anwendungen wie Listenansichten.

Lassen Sie mich wissen, wie es geht. Retrofit ist wirklich schön zu bedienen, aber extrem nervig, um herauszufinden!

+1

Ja, danke. Ich empfehle Ihnen http://www.jsonschema2pojo.org/, ich denke, es ist besser als der, den Sie gepostet haben :) – Chronos

0

Es gibt eine addon für intellij/android Studio für einfache POJO-Generation.

Haftungsausschluss: Ich habe keine Verbindung mit dem Projekt.

Verwandte Themen