我不想在CloudKit
中存储时间,以任何方式避免它?我从UIDatePicker
获取日期的问题,甚至我只设置日期(dp.datePickerMode = .Date
)冗余时间信息的问题也将存储在CloudKit
中。未通过日期选择器设置红色标记的数字。
答案 0 :(得分:2)
NSDate
没有分钟,小时,秒,日,月,年的概念。 NSDate
纯粹是指单个时间点的参考。
只有当您以可读格式(如字符串)显示日期时,您才能看到年,月,日,小时等...
这是NSDate将呈现变成人类可读字符串以进行调试这一事实的产物。
如果您不想显示日期,请不要显示日期。事实上,某人的出生日期实际上确实包含小时,分钟和秒,按照惯例,我们决定将其截短至仅几天。
只需使用NSDate
,当您显示它时,只显示日期部分。
顺便说一句
如果您未在UIDatePicker
中显示时间,则会使用当前时间。
答案 1 :(得分:1)
有很多理由只存储日期。 Apple没有提供。因此,在字符串中使用类似ISO的格式,2014/06/22。
存储只有日期的时间和日期(如生日或日历日)通常不是一个好习惯。当您只想要一天时存储NSDate的一个巨大缺陷是,您通常会根据您显示的时区来更改显示的日期。人们的生日不会因时区而改变。