6

我在一个标签中有 2:01:20 PM 格式;经过一些计算,我需要更改该标签的小时和/或分钟。

也就是说,是否可以通过将其转换为 NSDate 对象并修改小时和分钟(如下午 3:20:30)来更改该标签值?

是否有任何设置方法?

4

2 回答 2

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];
于 2011-10-26T19:42:22.477 回答
1

如果您需要及时计算特定的真实实例,例如 2010 年 10 月 23 日下午 3:20:30,那么您需要使用 NSCalendar,它可以让您分解日期并进行与日期相关的计算。

警告的话。日期和时间计算出奇地复杂和详细。预计会花几个小时来学习 API。

于 2010-06-04T12:35:56.427 回答