我正在尝试使用Google for Android提供的CalendarContract类。我试图弄清楚如何获取我可以应用于某个事件的颜色。如果您在Android日历应用或Google日历的网络版上转到添加事件屏幕,则可以看到可应用于活动的颜色列表。
我可以看到有一个可供选择的颜色列表,我想知道是否有办法以编程方式获取该列表。我不想假设我可以添加任何我想要的颜色。
我在添加事件时测试的一件事就是使用ContentValues对象传递一个随机的int:
ContentValues l_event = new ContentValues();
l_event.put(CalendarContract.Events.CALENDAR_ID, calID);
l_event.put(CalendarContract.Events.TITLE, eventName);
l_event.put(CalendarContract.Events.DESCRIPTION, "This is test event");
l_event.put(CalendarContract.Events.EVENT_LOCATION, "UCLA");
l_event.put(CalendarContract.Events.DTSTART, beginTime.getTimeInMillis());
l_event.put(CalendarContract.Events.DTEND, beginTime.getTimeInMillis());
l_event.put(CalendarContract.Events.EVENT_COLOR_KEY, 1);
Uri l_eventUri = Uri.parse("content://com.android.calendar/events");
Uri l_uri = context.getContentResolver().insert(l_eventUri, l_event);
我试过玩线
l_event.put(CalendarContract.Events.EVENT_COLOR_KEY, 1);
通过传递不同的整数。它看起来像较低的值,如1和2(我得到不同的事件颜色与这些值)。但如果我通过100,它会打破。这是我努力做到这一点的地方。我想知道如何查询日历,所以我知道我必须使用多少颜色。
有没有人有这方面的经验?或者我是不是错了?