2017-03-08 10 views
0

ユーザークラス変数のResponseから値を保存します。 残念ながら、私はできません。VolleyのonResponseからどのように値を返すことができますか?

お願いします。あなたのための

{"user":{"id":12,"name":"test_name","email":"[email protected]",}} 
+0

に間違っています。 –

+0

Setter Getterを使用し、Userクラスオブジェクト "userClass"を渡します。ここで、これらの値を使用するのは です。 – Chandan

答えて

0

2点:

public class User { 

    public int id; 
    public String name; 
    public String email; 

} 

これは、APIのJSONです:

これはこれは、Userクラスである

JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.GET, 
    jsonURLFull, new Response.Listener<JSONObject>() { 

     @Override 
     public void onResponse(JSONObject response) { 
      Log.d(ActivityLogin.class.getSimpleName(), response.toString()); 

      try { 
       User userClass = new User(); 

       JSONObject jsonUser = response.getJSONObject("user"); 
       userClass.id = jsonUser.getInt("id"); 
       userClass.name = jsonUser.getString("email"); 
       userClass.email = jsonUser.getString("email"); 

      } catch (JSONException e) { 
       e.printStackTrace(); 
       Toast.makeText(getApplicationContext(), 
       "Error: " + e.getMessage(), 
       Toast.LENGTH_LONG).show(); 
      } 
      hidepDialog(); 
     } 
    }, new Response.ErrorListener() { 

     @Override 
     public void onErrorResponse(VolleyError error) { 
      VolleyLog.d(ActivityLogin.class.getSimpleName(), "Error: " + error.getMessage()); 
      Toast.makeText(getApplicationContext(), 
      error.getMessage(), Toast.LENGTH_SHORT).show(); 
      hidepDialog(); 
     } 
    }); 
    AppController.getInstance().addToRequestQueue(jsonObjReq); 

JSONObjectRequestコードがあります

1.Youを解析するemailnameの属性があります。

userClass.name = jsonUser.getString("name"); 

2.yourのJSONデータを使用すると、it.Itがガベージコレクトだろう行っていない場合ので、ユーザークラスでセッターゲッターを適用してくださいによる最後の','

{"user":{"id":12,"name":"test_name","email":"[email protected]"}} 
関連する問題