次のコードを使用して、数字の月 (5) を完全な名前 (May) に変換しようとしています。ただし、設定を MM から MMMM に変更すると、null が返されます。どうしてこれなの?
NSDate *date = [birthday getDate];
NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit fromDate:date];
NSInteger year = [components year];
if (year == 1604) {
NSString *monthNumberString = [NSString stringWithFormat:@"%d", [components month]];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"MMMM"];
NSDate *date = [formatter dateFromString:monthNumberString];
NSString *stringFromDate = [formatter stringFromDate:date];
NSString *monthDay = [NSString stringWithFormat:@"%@, %d", stringFromDate, [components day]];
cell.birthdayLabel.text = monthDay;
} else {
...
}