ios – 如何仅在NSDate变量中设置时间?

前端之家收集整理的这篇文章主要介绍了ios – 如何仅在NSDate变量中设置时间?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有NSDate变量,只想更改时间(日期不应该更改).可能吗 ?

例如:DatePicker日期中的用户选择日期间隔(如果是开始日期,我想设置时间为00:00:00,如果是结束日期,则将时间设置为23:59:59)

感谢所有的帮助.

问候,亚历克斯

解决方法

你会想使用 NSDateComponents.
NSDate *oldDate = datePicker.date; // Or however you get it.
unsigned unitFlags = NSCalendarUnitYear | NSCalendarUnitMonth |  NSCalendarUnitDay;
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *comps = [calendar components:unitFlags fromDate:oldDate];
comps.hour   = 23;
comps.minute = 59;
comps.second = 59;
NSDate *newDate = [calendar dateFromComponents:comps];

猜你在找的iOS相关文章