我正在尝试创建一个基于云的服务,用于存储重复发生的事件。我选择使用icalendar RRULE标准(RFC2445)来实现这一点,并使用下面通过基于云的服务公开的数据库模式。
EventID
EventName
EventDescripton
Start
End
RecurrenceRule <-- Store RFC 2445 iCalendar specification RRULE (recurrence)
Active
Deleted
DateCreated
DateLastUpdated我相信EKRecurrenceRules是符合RFC2445的,然而,通过存储RRULE的字符串表示或EKRecurrenceRule的描述,可以实现更符合跨平台的体系结构。
如果可能的话,我希望避免存储EKRecurrence规则的单个组件。
发布于 2013-04-16 06:06:57
您也许能够使用这个库:https://github.com/FabienDiTore/ios-rrule_parser
要创建EKRecurrenceRule,请执行以下操作。如果你有,请让我知道。
发布于 2013-04-16 06:18:13
...extract EKRecurrenceRule描述属性中的规则描述
这似乎充满了危险。-[id description]的文档只保证它返回“一个描述接收器内容的字符串”--EKRecurrenceRule的实现在将来可能不会给出一个适当的Rule值,或者可能只是刚刚改变到“提取”RRule值不起作用。(这可能就是为什么苹果没有提供任何东西来将RRULE转换回EKRecurrenceRule -他们一开始就不想让你能够提取和使用RRULE。)
在我看来,更好的解决方案是找到或编写一个库或EKRecurrenceRule类别,提供适当的- (NSString *)rrule访问器和相应的- (id)initWithRRule:(NSString *)rrule初始化器。这样,您就可以避免依赖于未记录的行为,并且可以放心地以您想要的方式在RRULEs和EKRecurrenceRule实例之间进行转换。
https://stackoverflow.com/questions/12998280
复制相似问题