2016-10-02 13 views
0

Ich analysiere den Titel korrekt und zeige ihn in einer Listenansicht an. Ich kann nicht scheinen, auf dieRetrofit2, Android, @Get Parsing für Array Array

unten zu sehen. Hier sind die zwei Objekte, Beispielantwort und mein Retrofit-Aufruf. Bitte helfen Sie mir, auf diese Zeichenfolge zuzugreifen.

Antwort pojo:

public class Response { 
    public String count; 
    public Result []results; 
} 

erstes Objekt

public class Result { 
    public String title; 
    public static arr [] Details; 

zweites Objekt

public class Details { 
    public Integer _id; 
    public String findMe; 
} 

Retrofit Reaktion

Call<Response> call = api.getListWith(API_KEY); 
    call.enqueue(new Callback<Response>() { 
     @Override 
     public void onResponse(Call<Response> call, Response<Response> response) { 
      result = response.body(); 
} 

ich den Titel bin immer nur von 'Ergebnis' in den Adapter vorbei und

result[i].getTitle();

ich versucht, mit result[i].Details[0].getInvisible();

aber meine Fehlerreaktion verwendet, ist:

java.lang.NullPointerException: Attempt to read from null array 

Thank Sie zum Lesen.

+0

die statische in der 'Result' Klasse entfernen. Deklarieren Sie Arrays auch besser als Auflistungen wie 'List' – droidpl

+0

haben Sie das' results' Array oder 'Details' richtig initialisiert? –

+0

Warum sollte ich diese Klasse entfernen? Ich bekomme den Titel davon. – heLL0

Antwort

0
public class Result { 
    public String title; 
    public Details[] arr; 
} 

Dann

results[i].getarr[0].getfindMe(); 
+0

Ihre Antwort ist korrekt, aber das war nicht mein Problem. Ich machte den falschen Anruf. Für alle, die interessiert sind - ich habe gerade überprüft mit: String s = new Gson(). ToJson (response.body()); Log.v (TAG, s); – heLL0