【问题标题】:about delete EKEvent, when action = EKEventEditViewDelegate关于删除 EKEvent,当 action = EKEventEditViewDelegate
【发布时间】:2013-08-12 06:37:01
【问题描述】:
- (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。但不是。谁能帮帮我?

【问题讨论】:

    标签: iphone ios uiviewcontroller delegates


    【解决方案1】:

    实现 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];
    
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-07
      • 1970-01-01
      相关资源
      最近更新 更多