【发布时间】:2015-12-07 04:14:15
【问题描述】:
嗨朋友们很抱歉打扰你,但我在Json 数组上调用 for 循环时遇到问题,我只能显示 2 个数组,但有 3 个数组数据我想创建评论框,就像 Facebook 评论一样我从 3 天开始挣扎 this 是我的 Json
我也想知道如何在 JSons 上使用 arraylist 并使用数组的索引值调用
private void loadevent() {
SharedPreferences eveid = getActivity().getSharedPreferences("loginPrefs", Context.MODE_PRIVATE);
String eventid = eveid.getString("userid", "");
String url = "http://sampletemplates.net/majority/api.php?action=getEvents&user_id=" + eventid + "&page=1&source=android";
JsonArrayRequest eventreq = new JsonArrayRequest(url, new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
try {
for (int i = 0; i < response.length(); i++) {
JSONObject evntobj = response.getJSONObject(i);
CurrentList evtslsts = new CurrentList();
evtslsts.setEvid(evntobj.getInt("id"));
evtslsts.setEvtitle(evntobj.getString("title"));
evtslsts.setEvinfo(evntobj.getString("info"));
evtslsts.setEvimage(evntobj.getString("image"));
evtslsts.setEvvenue(evntobj.getString("venue"));
evtslsts.setEvtime_slot(evntobj.getString("time_slot"));
JSONArray cmtarray = evntobj.getJSONArray("comments");
for (int j = 0; j < cmtarray.length(); j++) {
JSONObject c = cmtarray.getJSONObject(j);
// CurrentList commentsslsts = new CurrentList();
evtslsts.setEvtuserid(c.getInt("user_id"));
evtslsts.setEvtusername(c.getString("user_name"));
evtslsts.setEvcomment(c.getString("user_comment"));
evtslsts.setTimetaken(c.getString("time"));
// cmtslist.add(commentsslsts);
}
evntlist.add(evtslsts);
}
eventsAdapter.notifyDataSetChanged();
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d("res", "Error: " + error.getMessage());
}
});
AppController.getInstance().addToRequestQueue(eventreq);
}
POJO 类
public class CurrentList {
private evtime_slot, evtusername, evcomment, timetaken;
public CurrentList() {
}
public CurrentList(String evtusername, String timetaken, String evcomment) {
this.evtuserid = evtuserid;
this.evtusername = evtusername;
this.timetaken = timetaken;
this.evcomment = evcomment;
}
public String getEvcomment() {
return evcomment;
}
public void setEvcomment(String evcomment) {
this.evcomment = evcomment;
}
public String getEvtusername() {
return evtusername;
}
public void setEvtusername(String evtusername) {
this.evtusername = evtusername;
}
public String getTimetaken() {
return timetaken;
}
public void setTimetaken(String timetaken) {
this.timetaken = timetaken;
}
}
【问题讨论】:
-
请具体说明您想做什么或详细描述您的问题
-
先生,我已经更新了详细信息,请通过 Json,我想要评论框,就像 facebook 评论框先生一样