iOS提供了一组可在应用程序中使用的日历。这是他们的ID列表:
NSString * const NSGregorianCalendar;
NSString * const NSBuddhistCalendar;
NSString * const NSChineseCalendar;
NSString * const NSHebrewCalendar;
NSString * const NSIslamicCalendar;
NSString * const NSIslamicCivilCalendar;
NSString * const NSJapaneseCalendar;
NSString * const NSRepublicOfChinaCalendar;
NSString * const NSPersianCalendar;
NSString * const NSIndianCalendar;
NSString * const NSISO8601Calendar;
如果我想添加更多日历该怎么办?让我们说法国共和党人(http://en.m.wikipedia.org/wiki/French_Republican_Calendar)?
我完全理解我可以使用公式来转换日期,但有没有办法像标准日历一样创建自己的日历,例如:
NSDateFormatter *formatter = [NSDateFormatter new];
formatter.calendar = [[NSCalendar alloc] initWithCalendarIdentifier:@"french_republican"]];
答案 0 :(得分:1)
正如您已经提到的显示NSLocale Calendar Keys,iOS中有一定数量的日历。您无法使用自定义标识符创建自己的标识符。
您可以做的是根据一些标准日历创建一些日历装饰器,并使用NSCalendar
方法执行所有计算。