2011-10-10 91 views
5

我有下面的代码添加到我的应用程序:XCode:为什么我的活动未被添加到日历中?

NSDate * selected = [DatePicker date]; 
NSString * date = [selected description]; 

NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit 
                   fromDate:DatePicker.date]; 

CalLabel1.text = [NSString stringWithFormat:@"%d", [components day]]; 

EKEventStore *store = [[EKEventStore alloc] init]; 

EKEvent *event = [EKEvent eventWithEventStore:store]; 
event.title = @"Test Event"; 
//required 
event.startDate = [DatePicker date]; 
event.endDate = [DatePicker date]; 
event.calendar = store.defaultCalendarForNewEvents; 
//end 

NSError *err; 
[store saveEvent:event span:EKSpanThisEvent error:&err]; 

这是为什么不添加任何东西到了iOS日历吗?

谢谢。

+1

您是否检查过错误?如果你将saveEvent调用包装在if中,你可以使用NSLog(@“%@”,err);'看看它为什么失败。 – Joe

+1

它说:错误域= EKErrorDomain代码= 3“未设置结束日期。” UserInfo = 0x178fe0 {NSLocalizedDescription =没有设置结束日期} – pixelbitlabs

回答

8

您的活动需要有效的时间范围才能保存。试试这个

event.startDate = selected; 
event.endDate = [selected dateByAddingTimeInterval:30*60]; //30 minutes for example 
+0

再一次,非常感谢 - 你一直非常乐于助人!这一切都为我工作......非常感谢:-) – pixelbitlabs

相关问题