2016-05-27 2 views
0

Я использую код для создания события повторяющееся календаря:Создать событие повторяющееся календаря

Calendar calendar = Calendar.getInstance(); 
calendar.set(Calendar.DAY_OF_MONTH, 26); 
calendar.set(Calendar.MONTH, 5 - 1); 
calendar.set(Calendar.YEAR, 2016); 
calendar.set(Calendar.HOUR_OF_DAY, 9); 
calendar.set(Calendar.MINUTE, 0); 
calendar.set(Calendar.SECOND, 0); 
ContentValues event = new ContentValues(); 
event.put(CalendarContract.Events.CALENDAR_ID, 1); 
event.put(CalendarContract.Events.TITLE, "Event Title 1"); 
event.put(CalendarContract.Events.DESCRIPTION, "Event Desc"); 
event.put(CalendarContract.Events.EVENT_LOCATION, "Event Location"); 
event.put(CalendarContract.Events.DTSTART, calendar.getTimeInMillis()); 
event.put(CalendarContract.Events.RRULE, "FREQ=DAILY;WKST=SU"); 
event.put(CalendarContract.Events.ALL_DAY, 1); // 0 for false, 1 for  true 
event.put(CalendarContract.Events.STATUS, CalendarContract.Events.STATUS_CONFIRMED); 
event.put(CalendarContract.Events.HAS_ALARM, 1); // 0 for false, 1 for true 
event.put(CalendarContract.Events.DURATION, "P3600S"); 
event.put(CalendarContract.Events.EVENT_TIMEZONE, calendar.getTimeZone().getID()); 
Uri url =  getContentResolver().insert(CalendarContract.Events.CONTENT_URI, event); 

Когда я удалить событие в календаре приложение по умолчанию, диалоговое окно удаления только показать 1 вариант удаления.

enter image description here

Но, когда я создаю событие повторяющимся в календаре приложения по умолчанию, диалоговое окно удаления опции показать-удалить.

enter image description here

Почему разница между создать событие моего кода и создать событие календаря приложения по умолчанию?

ответ

0

Это не ошибка.

Календар по умолчанию создаст новое событие с одноразовым повторением (при удалении события: показать 1 вариант удаления). Если вы выберете «Повторение» ежедневно, он создаст набор событий (когда удаляется событие: show 2 option delete). Если вы хотите создать ontime-событие, вы можете удалить строку:

event.put(CalendarContract.Events.RRULE, "FREQ=DAILY;WKST=SU"); 

в вашем коде.

При удалении вы увидите один из вариантов.

Смежные вопросы