任何人都知道如何在iOS 4.0之前的NSDate對象中設置時區?在iOS 4的和更大的I執行以下操作:如何在iOS 3.x中設置日期的時區
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDateComponents *components = [calendar components:(NSYearCalendarUnit|NSMonthCalendarUnit|NSWeekdayCalendarUnit|NSDayCalendarUnit|NSHourCalendarUnit|NSMinuteCalendarUnit|NSSecondCalendarUnit|NSTimeZoneCalendarUnit) fromDate:aDate];
NSTimeZone *gmt = [NSTimeZone timeZoneForSecondsFromGMT:0];
[components setTimeZone:gmt];
NSDate *newDate = [calendar dateFromComponents:components];
問題是,setTimeZone和NSTimeZoneCalendarUnit僅可開始與iOS 4.0。我是否必須對小時組件進行減法?
這是關於NSCalendar,而不是NSDate。 – 2011-12-15 21:49:33