我在一个标签中有2:01:20 PM格式;经过一些计算,我需要更改该标签的小时和/或分钟。
也就是说,是否可以通过将其转换为NSDate对象并像下午3:20:30那样修改小时和分钟来更改该标签值?
有没有针对此的setter方法?
答案 0 :(得分:27)
第一个问题的回答“如何以编程方式设置nsdate中的小时分钟?” 如下:
NSDate* result;
NSDateComponents *comps = [[NSDateComponents alloc] init];
[comps setMinute:0];
[comps setHour:0];
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
result = [gregorian dateFromComponents:comps];
[comps release];
答案 1 :(得分:1)
如果您需要及时计算特定的实例,例如2010年10月23日下午3:20:30,然后您想使用NSCalendar,它可以让您分解日期并进行日期相关的计算。
警告的话。日期和时间计算非常复杂和详细。期望花几个小时学习API。