Создать событие на основе дат в текстовом поле - PullRequest
0 голосов
/ 07 сентября 2011

Как я могу создать событие с календарем iPhone, получая даты начала и окончания от UITextField?

Ответы [ 2 ]

1 голос
/ 07 сентября 2011

Чтобы добавить событие программно, прочитайте руководство по программированию Event Kit от Apple . Может быть, вы хотите упростить для себя использование EKEventViewController, но вы можете делать все и в коде.

Чтобы преобразовать NSString из свойства text вашего текстового поля в NSDate, вам нужно будет использовать NSDateFormatter. В документации есть хорошие примеры .

0 голосов
/ 15 сентября 2011
//create an EKEventEditViewController to display the event view controller.

EKEventEditViewController *addController = [[EKEventEditViewController alloc] initWithNibName:nil bundle:nil];

//set eventstore global reference

addController.eventStore = self.eventStore;

// present EventsAddViewController as a modal view controller
[self presentModalViewController:addController animated:YES];

// assign <EKEventEditViewDelegate> to view controller
    addController.editViewDelegate = self;
[addController release];

//======================================================================

//Add delegate methods

- (void)eventEditViewController:(EKEventEditViewController *)controller 
    didCompleteWithAction:(EKEventEditViewAction)action {

NSError *error = nil;
EKEvent *thisEvent = controller.event;

switch (action) {
    case EKEventEditViewActionCanceled:
        // Edit action canceled, do nothing. 
        break;

    case EKEventEditViewActionSaved:
        // When user hit "Done" button, save the newly created event to the event store, 

        [controller.eventStore saveEvent:controller.event span:EKSpanThisEvent error:&error];
        break;

    case EKEventEditViewActionDeleted:
        // When deleting an event, remove the event from the event store, 

        [controller.eventStore removeEvent:thisEvent span:EKSpanThisEvent error:&error];
        break;

    default:
        break;
}
// Dismiss the modal view controller
[controller dismissModalViewControllerAnimated:YES];

}

// Set the calendar edited by EKEventEditViewController to our chosen calendar - the default calendar.

- (EKCalendar *)eventEditViewControllerDefaultCalendarForNewEvents:(EKEventEditViewController *)controller 
{
EKCalendar *calendarForEdit = self.defaultCalendar;
return calendarForEdit;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...