• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - EKEventStore-该事件不属于该事件存储

[复制链接]
菜鸟教程小白 发表于 2022-12-12 10:46:41 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我根本无法保存提醒/事件。但是,我已被授予使用提醒的权限(我检查了设置)。我已经打印出错误,并显示That event does not belong to that event store.这是我的代码;

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    self.eventStore =[[EKEventStore alloc] init];
    self.eventStoreAccessGranted = NO;
    [self.eventStore requestAccessToEntityType:EKEntityTypeReminder completion:^(BOOL granted, NSError *error) {
        self.eventStoreAccessGranted = granted;
        if (!granted) {
            NSLog(@"User has not granted permission");
        }
    }];

 }



- (IBAction)setAReminderid)sender {

    if (!self.eventStoreAccessGranted) {
        NSLog(@"Reminder is no");
        return;
    }
    NSLog(@"Reminder is YES");
    EKReminder * newReminder = [[EKReminder alloc] init];
    newReminder.title = @"ick up the kids";
    newReminder.calendar = [self.eventStore defaultCalendarForNewReminders];


    NSDate *now = [NSDate date];
    NSDate *alarmDate = [now dateByAddingTimeInterval:120];
    EKAlarm * ourAlarm = [EKAlarm alarmWithAbsoluteDate:alarmDate];

    [newReminder addAlarmurAlarm];
    NSError *error = nil;

    [self.eventStore saveReminder:newReminder commit:YES error:&error];
    NSLog(@"Event %@",[error localizedDescription]);
}

有什么建议可能是问题所在吗?



Best Answer-推荐答案


我将代码更改为此,并且可以正常工作。

 -(IBAction)setAReminderid)sender {

    if (self.eventStore == nil)
    {
        self.eventStore = [[EKEventStore alloc]init];

        [self.eventStore requestAccessToEntityType:EKEntityTypeReminder completion:^(BOOL granted, NSError *error) {

        if (!granted)
            NSLog(@"Access to store not granted");
        }];
    }

    if (self.eventStore != nil)
        [self createReminder];

}

-(void)createReminder
{
    EKReminder *reminder = [EKReminder
                        reminderWithEventStore:self.eventStore];

    reminder.title = @"Test";

    reminder.calendar = [_eventStore defaultCalendarForNewReminders];

    NSDate *date = [NSDate date];

    EKAlarm *alarm = [EKAlarm alarmWithAbsoluteDate:[date dateByAddingTimeInterval:120]];

    [reminder addAlarm:alarm];

     NSError *error = nil;

    [_eventStore saveReminder:reminder commit:YES error:&error];

    if (error)
    NSLog(@"error = %@", error);

}

关于ios - EKEventStore-该事件不属于该事件存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24656252/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap