Программно добавьте пользовательское событие в iPhone Calendar

180
задан TheNeil 14 May 2019 в 08:35
поделиться

4 ответа

Да там все еще не API для этого (2.1). Но это походило в WWDC, много людей уже интересовалось функциональностью (включая меня), и рекомендация состояла в том, чтобы перейти в ниже сайта и создать запрос новых функций для этого. Если существует действительно интерес, они могли бы закончить тем, что переместили ICal.framework в общедоступный SDK.

https://developer.apple.com/bugreporter /

13
ответ дан keremk 23 November 2019 в 06:12
поделиться

Идея Google хорошая, но имеет проблемы.

Я могу успешно открыть экран события Calendar Google - но только на главной версии на рабочем столе, и она не отображается правильно на iPhone Safari. Календарь Google Mobile, который отображает правильно на Safari, не работает с API для добавления событий.

На данный момент я не могу видеть хороший выход из этого.

0
ответ дан 23 November 2019 в 06:12
поделиться

Доступ к календарю добавлен в iPhone OS 4.0 :

Доступ к календарю
Теперь приложения могут создавать и редактировать события прямо в Приложение "Календарь" с комплектом событий.
Создавайте повторяющиеся мероприятия, настраивайте начало и конец раз и привязать их к любому календарю на устройстве.

12
ответ дан 23 November 2019 в 06:12
поделиться

Это можно сделать с помощью инфраструктуры Event Kit в ОС 4.0.

Щелкните правой кнопкой мыши группу FrameWorks в Навигаторе по группам и файлам в левой части окна. Выберите «Добавить», затем «Существующие FrameWorks», затем «EventKit.Framework».

Тогда вы сможете добавлять события с помощью следующего кода:

#import "EventTestViewController.h"
#import <EventKit/EventKit.h>

@implementation EventTestViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    EKEventStore *eventStore = [[EKEventStore alloc] init];

    EKEvent *event  = [EKEvent eventWithEventStore:eventStore];
    event.title     = @"EVENT TITLE";

    event.startDate = [[NSDate alloc] init];
    event.endDate   = [[NSDate alloc] initWithTimeInterval:600 sinceDate:event.startDate];

    [event setCalendar:[eventStore defaultCalendarForNewEvents]];
    NSError *err;
    [eventStore saveEvent:event span:EKSpanThisEvent error:&err];       
}

@end
154
ответ дан 23 November 2019 в 06:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: