<分区>
我现在很困惑。我一直愉快地使用 NSDateFormatter,没有任何问题,但今天我注意到我的一个应用程序在装有 iOS 8.1.3 的 iPhone 6 plus 设备上给了我疯狂的结果——而在其他设备/模拟器上似乎没问题。查看它有这段代码:
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
[dateFormatter setDateFormat:@"HH"];
NSInteger hour= [[dateFormatter stringFromDate:datetime] integerValue];
这个结果(在设备上)为 0-12 小时符号,因为出于我无法理解的原因,如果我在那个时候打印 [dateFormatter stringFromDate:datetime],我会得到“下午 4 点”!
我错过了什么?