没有通过JsonObjectRequest填充对象数组'holderArray'

时间:2019-04-09 23:19:49

标签: android android-volley jsonobjectrequest

我需要在每个索引上用两个String填充我的自定义对象数组。 数组被添加到JsonObjectRequest方法中。但它为空。我如何用JsonObjects填充数组。 两个字符串'FName'和'link'是我需要添加到自定义数组'holderArray'中的两个json对象

public class rSearchActivity extends AppCompatActivity {

ArrayList<String> itemList = new ArrayList<String>();
ListView listView;
RequestQueue rQueue;
F2FHolder adder;
ArrayList<F2FHolder> holderArray = new ArrayList<F2FHolder>();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_r_search);
    listView = (ListView)findViewById(R.id.rSearchList);
    itemList = (ArrayList<String>) getIntent().getSerializableExtra("passingArray");

    for(int i=0;i<itemList.size();i++){
        System.out.println(itemList.get(i));
    }
    rQueue= Volley.newRequestQueue(this);
    parse();
    for(int i=0;i<holderArray.size();i++){
        System.out.println(holderArray.get(i).getF2FName()+" : "+holderArray.get(i).getUrl());
    }

}

public void parse(){
    String url = //URL here;

    JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
        @Override
        public void onResponse(JSONObject response) {
            try {
                JSONArray jsonArray = response.getJSONArray("recipes");
                for(int i=0; i<jsonArray.length();i++){
                    JSONObject f2f = jsonArray.getJSONObject(i);

                    String FName = f2f.getString("title");
                    String link = f2f.getString("f2f_url");

                    adder = new F2FHolder(FName,link);
                    holderArray.add(adder);
                }


            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            error.printStackTrace();
        }
    });
    rQueue.add(request);


}

0 个答案:

没有答案