Я пытаюсь добавить событие в календарь ежевики.Используется следующий код:
EventList eventList = (EventList)PIM.getInstance().openPIMList(PIM.EVENT_LIST,PIM.WRITE_ONLY);
_event = eventList.createEvent();
String subject = _subject.getText().trim();
String location = _location.getText().trim();
long startTime = _startTime.getDate();
long endTime = _endTime.getDate();
String description = _desc.getText().trim();
if (subject.length() == 0 || location.length() == 0)
{
Dialog.inform("Subject and location required");
return false;
}
if ( endTime <= startTime || startTime < System.currentTimeMillis())
{
Dialog.inform("Invalid Start/End times");
return false;
}
_event.addString(Event.SUMMARY, PIMItem.ATTR_NONE, subject );
_event.addString(Event.LOCATION, PIMItem.ATTR_NONE, location);
_event.addDate(Event.START, PIMItem.ATTR_NONE, startTime);
_event.addDate(Event.END, PIMItem.ATTR_NONE, endTime);
_event.addString(Event.NOTE, PIMItem.ATTR_NONE, description);
RepeatRule rule = new RepeatRule();
switch(_recur.getSelectedIndex())
{
case 1:
rule.setInt(RepeatRule.FREQUENCY,RepeatRule.DAILY);
break;
case 2:
rule.setInt(RepeatRule.FREQUENCY,RepeatRule.WEEKLY);
break;
case 3:
rule.setInt(RepeatRule.FREQUENCY,RepeatRule.MONTHLY);
break;
case 4:
rule.setInt(RepeatRule.FREQUENCY,RepeatRule.YEARLY);
break;
}
_event.setRepeat(rule);
_event.commit();
Этот код взят из примера приложения Blackberry PIMDEMO
Ошибка:
событие, добавленное к датам после даты окончания
Пример: если я установлю событие с 1 декабря 2011 г. (дата начала) до 2011 г. 5 декабря (дата окончания) Затем событие отображается в календаре с 1 декабря.до всех дней после него (то есть событие никогда не заканчивается).
Я тестировал этот код на симуляторе BlackBerry Pearl 9105.