Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

EKEventEditViewController Add and Cancel buttons not responding

I am trying to add a calendar event using EKEventEditViewController. I have setup a EKEventEditViewController properly with an EKEventStore, EKEvent, and its editViewDelegate as the presenting view controller. The EKEventEditViewController presents itself correctly, but when I press either 'add' or 'cancel', didCompleteWithAction does not called in EKEventEditViewDelegate. But, I do get this error (no crash though):

[EKCalendarItemLocationInlineEditItem isSubitemAtIndexSaveable:] - Location Inline Edit Item didn't have a text label on its non conference location cell; will return NO

You can see here that EKCalendarItemLocationInlineEditItem is in the EventKitUI framework.

It seems like this has something to do with location but I can't seem to figure it out. Has anyone ever encountered this error, or have any tips on how to further debug? Thanks! I am running iOS 11 and Xcode 9.0.1.

like image 616
Andrew McCallum Avatar asked Oct 18 '22 03:10

Andrew McCallum


1 Answers

It looks like you did not set the editViewDelegate before presenting the EKEventEditViewController. Without the delegate, the Buttons 'add' and 'cancel' do not respond.

Creating the EventView and presenting (Swift)

let eventView: EKEventEditViewController = EKEventEditViewController()
eventView.event = event
eventView.editViewDelegate = self
eventView.eventStore = eventStore

present(eventView, animated: true) { }

ObjC

EKEventEditViewController *eventView = [[EKEventEditViewController alloc] init];
eventView.event = event;
eventView.editViewDelegate = self;
eventView.eventStore = eventStore;

[self presentViewController:eventView animated:true completion: nil];
like image 149
Christian Seiler Avatar answered Oct 21 '22 07:10

Christian Seiler