1

我有一个通用应用程序,同时针对iPhoneiPad仅支持iOS 6+

我有一段非常简单的代码可以从中提取时间NSDate并将其格式化以进行显示:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"h:mm a"];
validFromField.text = [formatter stringFromDate:fromDate];

在 fromDate 中的日期,'01/01/2012 10:00'在 iPhone Simulator、iPad Simulator 和真正的 iPhone 4S 上,我得到预期值'10:00 AM'

但是,在我的 iPad(3,新 iPad)上,我'10:00'好像'a'忽略了格式化程序中的 。

iPhone 和 iPad 都在运行iOS 6.0.1

有没有人遇到过这个问题,或者知道如何解决?

4

1 回答 1

0

我在这里的另一个 SO 问题中找到了我的问题的答案:NSDateFormatter has different results when iPad has a 24-hour format ...

由 Apple 技术问答支持:http: //developer.apple.com/library/ios/#qa/qa1480/_index.html

所以本质上,如果设备设置为 24 小时制,那么'a'格式化程序中的标志将被忽略,时间将以 24 小时格式返回。

于 2013-01-14T22:22:17.517 回答