我有一个10.4样式的日期格式化程序应用于NSTextFieldCell。我调用setTwoDigitStartDate :(尝试使用纪元日期和“参考”日期)但是当我输入一个两位数年份的日期时,它将年份设置为0009而不是2009年。
部首:
IBOutlet NSTextFieldCell *transactionDateField; // outlet *IS* set correctly in IB
实现:
- (void)awakeFromNib {
NSDate *startDate = [NSDate dateWithTimeIntervalSinceReferenceDate:0];
//NSDate *startDate = [NSDate dateWithTimeIntervalSince1970:0];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setFormatterBehavior:NSDateFormatterBehavior10_4];
[dateFormat setDateStyle:NSDateFormatterMediumStyle];
[dateFormat setTwoDigitStartDate:startDate];
[dateFormat setLenient:YES]; // tried with & without this
[transactionDateField setFormatter:dateFormat];
}
我错过了一些明显的东西吗?
答案 0 :(得分:1)
尝试将NSDateFormatterMediumStyle
更改为此NSDateFormatterShortStyle