swift - 如何将日期选择器日期更改为 NSDate 类型但秒数为零

标签 swift datepicker ios9

我有一个日期选择器,它返回一个 NSdate 值。我希望将秒数的日期值设置为 0。我有在 Objective c 中执行此操作的代码:

NSTimeInterval time = floor([date timeIntervalSinceReferenceDate] / 60.0) * 60.0;
    return  [NSDate dateWithTimeIntervalSinceReferenceDate:time];

其中date是日期选择器的日期。那么如何快速实现这一点呢?

最佳答案

它在 Swift 中几乎相同:

let date = NSDate()
let ti = floor(date.timeIntervalSinceReferenceDate/60.0) * 60.0
let date1 = NSDate(timeIntervalSinceReferenceDate: ti)

使用 NSCalendar 方法也可以实现同样的效果:

let cal = NSCalendar.currentCalendar()
var date2 : NSDate?
cal.rangeOfUnit(.Minute, startDate: &date2, interval: nil, forDate: date)

这有一个很大的优点,那就是它可以很容易地适应 较大的时间单位,如天、月等,没有固定的时间单位 长度(例如,在有地区的地区,一天可以有 23、24 或 25 小时) 夏令时)。

关于swift - 如何将日期选择器日期更改为 NSDate 类型但秒数为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39397151/

相关文章:

ios - 如何删除添加到特定相册但不添加到其他相册的照片?

swift - 在 swift 中转换和强制指针有什么区别?

javascript - 修改 jQueryUI 日期选择器按钮

swift - MFMailComposeViewController navigationBar 自定义背景色

xcode - 此应用程序的包标识符与其代码签名标识符不匹配

ios - Swift Firebase UICollectionView - 图像缩略图不一致

swift - verseGeocode - 完成处理完成处理程序? ( swift )

jquery - BootStrap DatePicker 无冲突

GWT 日历或日期选择器显示一年中的季节

ios - UITextView 不会将输入工具栏切换到自定义键盘