ios - 字符串格式的日期选择器日期已关闭

标签 ios nsdateformatter uidatepicker

我有一个只有月、日和年的 UIDatePicker。我正在尝试使用以下代码将所选日期输出到 TextField:

-(IBAction) dateChanged:(id)sender
{
    NSDate *date = datePicker.date;
    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    [df setDateFormat:@"M/d/YYYY"];
    expirationDateField.text = [df stringFromDate:date];
    [df release];
}

对于大多数日期,这都有效,但出于某种原因,当我选择 2009 年 1 月 1 日或 2009 年 1 月 2 日时,我最终得到的是“1/1/2008”或“1/2/2008”(这不特定于 2009)。我认为这是一个时区问题,但如果是这样的话,它不会显示 1 月 2 日的错误年份。有什么想法吗?

最佳答案

使用小写字母 yyyy 表示年份。

大写 YYYY 返回日期所在周开始的年份。
参见 Unicode Date Format Patterns .

关于ios - 字符串格式的日期选择器日期已关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6388370/

相关文章:

ios - UICollectionView 重新加载不正确

iphone - 从应用程序 (AVPlayer - MPVolumeView) 在 Apple TV 上播放元数据

ios - 如何为 IOS 7 实现宏?

iphone - NSDateFormatter 没有给出正确的 MMMM 值

ios - 尝试在 UIDatePicker 中显示 Am 和 Pm

ios - 如何根据 UIDatePicker 语言设置 NSDateFormatter

ios - safari/ios 是否支持 http 直播流的自动播放?

ios - NSString 到 NSDate 的转换失败

ios - 日期格式化程序返回零值

ios - UIDatePicker EventValueChanged 未显示实际日期/时间