Som standard er NSDateFormatter indstillet til localTimeZone. Da din dateString ikke havde tidszoneoplysninger, beregnede den tiden mht. localTimeZone. Hvis du ved, at tidszonen for din dateString er UTC, skal du indstille den til dateFormatter.
NSDate repræsenterer absolut tid, repræsentationen kan variere i forhold til tidszoner, men det er en unik værdi, og den vil ikke blive påvirket af sommertid.
-(NSDate *)formatDateWithString:(NSString *)dateString{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSDate* date = [dateFormatter dateFromString:dateString];
NSLog(@"Formatted Timestamp: %@ - Original Timestamp: %@", date,dateString);
return date;
}