我正在使用NSDateFormatter在我的iPhone应用程序中设置日期,并且日期正确显示.但是,我发现所有语言环境(我的应用程序支持多达12种不同的语言)都坚持我通过setDateFormat指定的日期格式.理想情况下,我希望日期格式以自然的形式出现在用户的区域设置中,而不是遵循我的格式(适用于英语,但对于其他语言环境可能不太自然).
以下是我的代码:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
[dateFormatter setDateFormat:@"MMMM dd, yyyy kk:mm:ss"];
self.creationDate.text = [dateFormatter stringFromDate:creationTimeStamp];
fbr*_*eto 32
我会尝试使用以下NSDateFormatterAPI:
+ (NSString *)localizedStringFromDate:(NSDate *)date
dateStyle:(NSDateFormatterStyle)dateStyle
timeStyle:(NSDateFormatterStyle)timeStyle;
Run Code Online (Sandbox Code Playgroud)
像这样:
self.creationDate.text = [NSDateFormatter localizedStringFromDate:creationTimeStamp
dateStyle:NSDateFormatterMediumStyle
timeStyle:NSDateFormatterShortStyle];
Run Code Online (Sandbox Code Playgroud)
这应该会给你你正在寻找的输出,稍微整理一下代码,让你不必管理一些虚假的内存.
Boo*_*oon 12
找到了解决方案.关键是根本不打电话setDateFormat,iPhone中的API会根据setDateStyle和中指定的内容自动选择要显示的内容setTimeStyle.
| 归档时间: |
|
| 查看次数: |
14268 次 |
| 最近记录: |