如何使关联对象的NSDate工作?

时间:2015-05-18 16:10:33

标签: ios objective-c

我想将一个关联对象添加到NSDate对象。为此,我使用了here描述的方法。

我现在的问题是iOS不会(不再?)为同一天创建不同的NSDate对象(参见here)。因此,如果我有两个具有相同NSDate的项目,我无法区分对象,并且我为特定项目添加关联对象的方法失败。

我尝试过不同的方法:

  • 使用copy
  • NSDate方法
  • NSDate *deepCopy = [[NSDate alloc] initWithTimeInterval:0 sinceDate:date];
  • NSDate *deepCopy = [date dateByAddingTimeInterval:0];

但是我命名为deepCopy的变量不是原始date对象的深层副本。

我该怎么办?

1 个答案:

答案 0 :(得分:3)

您是否考虑过创建自定义模型对象来表示日期和您想要与之关联的其他数据的组合?应尽可能避免相关对象。为什么不将NSObject子类创建具有两个属性的模型对象 - NSDate属性以及要与其关联的其他数据的属性/属性。