【发布时间】:2015-08-07 15:53:46
【问题描述】:
我正在研究 Google 日历,我想为事件设置颜色并从我拥有的 java 时间戳对象设置事件时间。目前我找不到任何可用的颜色和颜色字符串的格式。
下面是我的静态日期和时间代码,没有颜色。我尝试使用时间戳,但谷歌有一些奇怪的 DateTime 对象。此外,我找不到任何颜色的默认格式。 包含日期和时间设置的基本示例是静态字符串。太可怕了,什么样的开发者使用硬编码的日期和时间值作为例子来展示他们的日期时间api是如何的。我希望将来我不必处理这种混乱的 API。抱歉吐槽,代码如下:
@Override
public Event setUpEventToSave(GroupNotes groupNotes, Person person) {
Event event = new Event();
event.setSummary(groupNotes.getMnotetag());
event.setDescription(groupNotes.getMnotetext());
Event.Creator creator = new Event.Creator();
creator.setDisplayName(person.getFirstName());
creator.setEmail(person.getUsername());
event.setCreator(creator);
event.setDescription(groupNotes.getMnotetext());
// I have color in #colorid in DB, but that didn't work, which is standard
// event.setColorId(groupNotes.getMnotecolor());
event.setSummary(groupNotes.getMnotetext());
event.setLocation("Hamburg");
// How can i pass java timestamp below with system time zone?
DateTime startDateTime = new DateTime("2015-08-07T09:00:00-07:00");
EventDateTime start = new EventDateTime()
.setDateTime(startDateTime)
.setTimeZone("America/Los_Angeles");
event.setStart(start);
DateTime endDateTime = new DateTime("2015-08-07T17:00:00-07:00");
EventDateTime end = new EventDateTime()
.setDateTime(endDateTime)
.setTimeZone("America/Los_Angeles");
event.setEnd(end);
/* EventAttendee[] attendees = new EventAttendee[] {
new EventAttendee().setEmail("lpage@example.com"),
new EventAttendee().setEmail("sbrin@example.com"),
};
event.setAttendees(Arrays.asList(attendees));
*/
EventReminder[] reminderOverrides = new EventReminder[] {
new EventReminder().setMethod("email").setMinutes(24 * 60),
new EventReminder().setMethod("popup").setMinutes(10),
};
Event.Reminders reminders = new Event.Reminders()
.setUseDefault(false)
.setOverrides(Arrays.asList(reminderOverrides));
event.setReminders(reminders);
return event;
}
任何帮助都会很好。非常感谢。 :-)
【问题讨论】:
标签: java date google-api timestamp google-calendar-api