2016-05-18 2 views
0

Я работаю над приложением календаря.Событие календаря добавить неправильное время вопроса

Я пытаюсь добавить добавить новое событие по умолчанию в iPhone calendar.In этот случай успешно добавлен событие, но время начала всегда устанавливается 5.30 PM по умолчанию в календаре iPhone, как решить эту проблему

Прикрепленный ниже фрагмент кода,

let event = EKEvent(eventStore: store) 
event.title = "calendar Name" 
event.startDate = startDate //2016-05-19 00:00:00 +0000 
event.endDate = endDate // 2016-05-19 23:59:59 +0000 
event.calendar = store.defaultCalendarForNewEvents 
do { 

    try store.saveEvent(event, span: .ThisEvent, commit: true) 

    } catch { 

    } 
+0

Как получить STARTDATE и ENDDATE? Пожалуйста, укажите полную информацию для лучшего понимания. –

+0

let gregorian = NSCalendar (calendarIdentifier: NSCalendarIdentifierGregorian) gregorian? .timeZone = NSTimeZone (forSecondsFromGMT: 0) let components = gregorian? .components ([. Year, .Month, .Day], FromDate: CurrentDate) компоненты .timeZone = NSTimeZone (forSecondsFromGMT: 0) компоненты .hour = 00 компоненты .second = 00 компоненты .minute = 00 пусть beggingOfDay = Григорианский .dateFromComponents (компоненты) – rajes

+0

??! я не понимаю, что вы делаете? Что ты хочешь делать? Какую дату вы хотите и в какой часовой зоне? –

ответ

1

Похоже, что часовой пояс вашего устройства установлен на IST.

Следовательно, 5.30 AM, отображаемое в календаре вашего устройства, является ожидаемым поведением. Потому что при сохранении времени начала; вы сохраняете его в GMT; отметьте +0000 за раз.

Если вы хотите сохранить событие как весь день события, Просто установите

event.allDay = YES 
Смежные вопросы