2014-06-11 5 views
1

내 사용자 정의 클래스의 데이터가 표시되지 않습니다.JSONObject를 사용자 정의 클래스로 구문 분석

내가 PHP 스크립트에서 내 JSON 개체를 얻을 내가 문자열 result에 저장 한 후 나는 GET 방식으로 특정 변수를 호출하는 클래스에서 내 사용자 정의 클래스 Planets 에 삽입하려고하지만 그것은에 표시되지 않습니다 내

String jsonString = result; 
Gson gson = new Gson(); 
Planets seznamPlanet = gson.fromJson(jsonString, Planets.class); 
this.result_tv.setText(seznamPlanet.getPlanetName()); 
//this.result_tv.setText(jsonString); this works 

내 수업은 다음과 같습니다 :

public class Planets { 
    public String name; 
    public Integer size; 
    public Integer o2; 
    public Integer atmosphere; 

    public String getPlanetName() { 
     return name; 
    } 

    public Integer getPlanetSize() { 
     return size; 
    } 

    public Integer getPlanetO2() { 
     return o2; 
    } 

    public Integer getPlanetAtmosphere() { 
     return atmosphere; 
    } 
} 
텍스트 뷰 result_tv 여기

코드입니다 결과 문자열 내부

및 JSON 객체는 다음과 같습니다

public class Planet { 
    public String name; 
    public Integer size; 
    public Integer o2; 
    public Integer atmosphere; 
} 

(충돌을 피하기 위해) PlanetPlanets 클래스의 이름을 바꿉니다

{"Planets":[{"name":"Earth","size":"3","o2":"1","atmosphere":"1"},{"name":"Mars","size":"8","o2":"0","atmosphere":"0"}]} 
+1

당신은 행성의 목록이 포함 된 또 하나 개의 클래스가 필요 – cy3er

답변

0

PlanetsList

public class PlanetsList { 
    List<Planet> Planets; //rename was useful so we don't have List<Planets> Planets 
} 

그런 다음 전화라는 이름의 또 다른 클래스를 만듭니다 gson like :

PlanetsList seznamPlanet = gson.fromJson(jsonString, PlanetsList.class); 
+0

밤은이'행성 seznamPlanet = gson.fromJson (jsonString, PlanetsList.class)의 오타,'때문에 행성은 클래스가 아닙니다 – user3728897

+0

당신 말이 맞아요. 고쳤다. –

0

이 같은 것을보십시오 :

public class Planets { 
    public Planet[] planets; 

    @Override 
    public String toString() { 
     return (new Gson().toJson(this)); 
    } 

    public final class Planet { 
     public String name; 
     public Integer size; 
     public Integer o2; 
     public Integer atmosphere; 

     @Override 
     public String toString() { 
      return (new Gson().toJson(this)); 
     } 
    } 
} 
관련 문제