使用Swift为NSDate添加天/小时

时间:2016-06-28 23:02:08

标签: swift nsdate

我知道这是一个非常基本的问题,而且我知道我可能找不到答案,因为我没有问正确的问题,但我怎样才能更改NSDate值?

例如,我有date属性设置为datePicker的日期,我想创建一个新属性,即date属性的前一天和另一个属性是一个小时前。

1 个答案:

答案 0 :(得分:15)

添加和删除天数

为避免白天夏令时出现问题,当您添加天数时,应使用NSCalendar

斯威夫特3:

let tomorrow = Calendar.current.date(byAdding:
    .day, // updated this params to add hours
    value: 1,
    to: now)

斯威夫特2:

let tomorrow = NSCalendar.currentCalendar().dateByAddingUnit(
    .Day, // updated this params to add hours
    value: 1,
    toDate: now,
    options: .MatchFirst)
  

请注意,您改变原始实例(now),您只是在构建一个新实例。事实上,NSDate类是不可变的