objective-c – EventKit:提醒dueDateComponents vs Alarm

我想从我的应用程序创建一个提醒,所以我创建了一个提醒(EKReminder)并设置了一个警报:
NSTimeInterval timeInterval = 100000;
NSDate *alarmDate = [NSDate dateWithTimeIntervalSinceNow:timeInterval];
EKAlarm *alarm = [EKAlarm alarmWithAbsoluteDate:alarmDate];
[reminder setAlarms:@[alarm]];

但我发现EKReminder上还有一个dueDateComponents属性.设置警报和dueDateComponents有什么区别?

还有一种方法可以创建一个警报:alarmWithRelativeOffset:(NSTimeInterval)偏移,但文档说偏移参数可以是负数,过去怎么可能有警报?

解决方法

EKReminder项类似于todo列表上的任务,具有可选的开始日期和截止日期,dueDateComponents属性允许您指定何时应完成任务.例如,它允许您显示过期的项目.这是信息性的,与警报分开.

在提醒时设置闹钟将使“提醒”应用在闹钟响起时通知用户.

我想这有点令人困惑,因为Reminders应用程序似乎不允许您设置截止日期,只设置警报日期.然而,在这篇博客文章中,它显示了您以前如何在icloud.com上设置截止日期但没有提醒日期:http://blog.truthdialogue.com/2012/07/setting-due-dates-in-the-os-x-mountain-lion-reminders-app.html.看起来Apple自API开发以来已经简化了应用程序.

alarmWithRelativeOffset:的偏移量来自事件的开始日期/时间.因此,您可以将警报设置为在事件发生前x分钟关闭.

相关文章

文章浏览阅读315次。之前用C语言编过链表,这几天突然想用C+...
文章浏览阅读219次。碰到问题就要记录下来,防止遗忘吧。文章...
文章浏览阅读1.8k次,点赞11次,收藏37次。因为自己对决策树...
文章浏览阅读492次。C++ 设计模式之策略模式
文章浏览阅读683次。我也算是个C++的小白,对于C++中的谓语我...
文章浏览阅读225次。又看了一遍操作符的东西,感觉之前对操作...