1

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"]];
4

1 回答 1

1

正如您已经提到的显示NSLocale 日历键,iOS 中有一定数量的日历。您无法使用自定义标识符创建自己的标识符。

您可以做的是基于一些标准日历创建一些日历装饰器,并将使用NSCalendar方法执行所有计算。

于 2013-09-15T19:27:39.467 回答