You can get difference with bellow code
NSString *strDifference = [self getDateDifferencewithTimeDay:yourOldDateString strDate2:[self StringFromDate:[NSDate date]]];
NSLog(@"\n Difference =====>> %@", strDifference);
Here i set old string and current string to get difference between that both dates.
Here i use two methods in above code one is getDateDifferencewithTimeDay for get difference between that dates and second is StringFromDate for get data in string format.
-(NSString *)getDateDifferencewithTimeDay:(NSString *)strDate1 strDate2:(NSString *)strDate2{
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
NSDate *Date1;
NSDate *Date2;
NSString *strAnswer;
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
Date1 = [formatter dateFromString:strDate1];
Date2 = [formatter dateFromString:strDate2];
NSTimeInterval timeDifference = [Date2 timeIntervalSinceDate:Date1];
double minutes = timeDifference / 60;
double hours = minutes / 60;
double seconds = timeDifference;
double days = minutes / 1440;
if (seconds < 60) {
strAnswer = [NSString stringWithFormat:@"%.0f Seconds ago.",seconds];
}
else if (minutes < 60){
strAnswer = [NSString stringWithFormat:@"%.0f Minutes ago.",minutes];
}
else if (hours < 24){
strAnswer = [NSString stringWithFormat:@"%.0f Hours ago.",hours];
}
else{
strAnswer = [NSString stringWithFormat:@"%.0f Days ago.",days];
}
return strAnswer;
}
And also this bellow method is for convert NSDate to NSString format
-(NSString *)StringFromDate:(NSDate *)DateLocal{
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *dateString = [dateFormat stringFromDate:DateLocal];
NSLog(@"Date is HERE =====>> %@",dateString);
return dateString;
}