在我的 iPhone 应用程序中,我需要以yyyy/MM/dd
如下图所示的格式显示日期
但在 iPhone 日期选择器中,它的格式为MM/dd/yyyy,这对于我的应用程序来说并不统一
我尝试更改日期选择器的本地值(具有不同的国家/地区),但仍以默认格式不使用它。
如何根据我的要求更改日期选择器上的日期格式?
任何帮助表示赞赏。
在我的 iPhone 应用程序中,我需要以yyyy/MM/dd
如下图所示的格式显示日期
但在 iPhone 日期选择器中,它的格式为MM/dd/yyyy,这对于我的应用程序来说并不统一
我尝试更改日期选择器的本地值(具有不同的国家/地区),但仍以默认格式不使用它。
如何根据我的要求更改日期选择器上的日期格式?
任何帮助表示赞赏。
在 Apple 的文档中,他们在UIDatePickerModeDate
. 显示DatePicker
月份、月份中的日期和年份。这些项目的确切顺序取决于locale
设置。这种模式的一个例子是 [ 十一月 | 15 | 2007 年]。但在设备中显示为 DD/MM/YYYY。有关详细信息,请参阅UIDatePicker。
所以如果你想自己做,你可以UIPickerView
用你想要的值创建你自己的。
UIDatePicker 可以适应用户的设置。使用 locale: 方法更改其格式是可能的,但现在在 iOS 5.0 中已弃用。
您可以在 iPhone 的设置中查看您的格式:
Settings > General > International > Region Format >
如果您想要特定格式,请考虑制作自己的选择器,但非常不鼓励使用日期选择器。
并参考此链接
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[NSTimeZone resetSystemTimeZone];
NSTimeZone *gmtZone = [NSTimeZone systemTimeZone];
[dateFormatter setTimeZone:gmtZone];
[dateFormatter setDateFormat:@"day, MMM HH:mm:ss Z"];
NSDate *dateT = [dateFormatter dateFromString:str1];
NSString *strDateTaken=[appDelegate convertDate:dateT withFormat:@"EEEE, MMMM dd,yyyy hh:mm a"];
[dateFormatter release];
- (NSString *)convertDate:(NSDate *)date withFormat:(NSString *)format {
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:format];
NSString *dt = [formatter stringFromDate:date];
[formatter release];
return dt;
}