正在从循环中添加日历事件



我遵循本教程创建议程视图日历。它运行良好,但我需要显示的是来自服务器的事件。在服务器上,它只显示最后一个事件,我尝试将mCalendarView.setDate(myEventDay.getCalendar());放入for循环内外,但效果相同。

Calendar cal = Calendar. getInstance();
for (int i = 0; i < response.length(); i++) {
// Get current json object
JSONObject details = response.getJSONObject(i);
String dateTime = details.getString("date_from");
StringTokenizer tokens = new StringTokenizer(dateTime, "T");
String date = tokens.nextToken();
String time = tokens.nextToken();
Date mdate = parseDateToddMMyyyy(Date);
String event_title = details.getString("event_title");
String event_description = details.getString("event_description");
String locationName = details.getString("event_location");
String event_lat = details.getString("lat");
String event_long = details.getString("longi");
String eTime = details.getString("from_time");

myEventDay = new MyEventDay(cal, eTime,
R.drawable.ic_shape, event_title, event_description, "",
"",
"lat "+event_lat+ " long "  ,LocationName);
myEventDay.setCalendar(cal);
myEventDay.setmNote(event_title);
myEventDay.setmTime(eTime);
myEventDay.setmDescription(event_description);
myEventDay.setmCategory("Category");
myEventDay.setmSubCat("Sub Category");
myEventDay.setmLocationName(locationName);
mCalendarView.setDate(myEventDay.getCalendar());
mEventDays.add(myEventDay);
cal.clone();
}
mCalendarView.setEvents(mEventDays);
} catch (JSONException e) {
e.printStackTrace();
} catch (OutOfDateRangeException e) {
e.printStackTrace();
}
}    

可能是cal.clone()方法的问题。我认为它没有任何作用。尝试使用cal = cal.clone()或将Calendar cal = Calendar. getInstance();放入循环中。

最新更新