【发布时间】:2009-09-04 10:55:05
【问题描述】:
在文档中,Apple 提供了一个示例,说明如何将几小时和几分钟添加到现有日期:
NSDate *today = [NSDate date];
NSDateComponents *offsetComponents = [[NSDateComponents alloc] init];
[offsetComponents setHour:1];
[offsetComponents setMinutes:30];
NSDate *endOfWorldWar3 = [gregorian dateByAddingComponents:comps toDate:today options:0];
但是现在,我有日期,它以 12 小时格式和 AM / PM 打印出来(unicode 标准格式说明符是“a”)。
所以我有一个设置为 8:00 'o 时钟的日期对象,现在我想将它切换到 PM 或 20:00'o 时钟。难以解释。 NSDateComponents 没有相应的组件。
文档说所有这些 NSDateComponents 事物,如小时、分钟、天等,都与日历对象关联。说得通。但是我在 NSCalender 中没有找到任何会说“这是 12 小时格式”或“这是 24 小时格式”的内容。
实际上,当我更改小时数时会发生什么?这实际上不是简单的数学运算,说“让我们休息 12 小时,或者让我们增加 12 小时”?有什么想法吗?
【问题讨论】:
标签: iphone cocoa-touch uikit