[英]about delete EKEvent, when action = EKEventEditViewDelegate
- (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,
// and reload table view.
// If the new event is being added to the default calendar, then update its
// eventsList.
if (self.defaultCalendar == thisEvent.calendar) {
[self.eventsList addObject:thisEvent];
}
[controller.eventStore saveEvent:controller.event span:EKSpanFutureEvents error:&error];
[self.tableView reloadData];
break;
case EKEventEditViewActionDeleted:
// When deleting an event, remove the event from the event store,
// and reload table view.
// If deleting an event from the currenly default calendar, then update its
// eventsList.
if (self.defaultCalendar == thisEvent.calendar) {
[self.eventsList removeObject:thisEvent];
}
[controller.eventStore removeEvent:thisEvent span:EKSpanFutureEvents error:&error];
[self.tableView reloadData];
break;
default:
break;
}
// Dismiss the modal view controller
[controller dismissModalViewControllerAnimated:YES];
}
此函數在EKEventEditViewDelegate
。 我想知道當我單擊哪個按鈕時,“操作”值是EKEventEditViewActionDeleted
。
首先,我認為當我單擊刪除事件按鈕時, action == EKEventEditViewActionDeleted
。 但不是。 有人可以幫助我嗎?
實現EKEventViewDelegate協議,然后使用...檢查刪除事件。
-(void) eventViewController:(EKEventViewController *)controller didCompleteWithAction:(EKEventViewAction)action
{
if (action == EKEventViewActionDeleted) {
// Update unique event ID to core data & change text of button to new
_itemReminder = NULL;
_part.reminderID = NULL;
_savedEventFound = NO;
[_reminderButton setTitle: @"New" forState: UIControlStateNormal];
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.