промежуток времени для Facebook (приложение IOS) - PullRequest
0 голосов
/ 20 июля 2011

Я хочу рассчитать промежуток времени для твиттера и фейсбука.

Для твиттера: - вторник, 19 июля 11:08:46 +0000 2011

для facebook: -2011-07-18T15: 25: 09 + 0000

Я хочу преобразовать его в лайк, 1 час назад, 60 минут назад, 2 месяца назад и т. Д.

И как сравнить эти значения времени для сортировки по времени.

Пожалуйста, предоставьте любой пример кода или ссылку на любой класс, чтобы я мог это сделать.

1 Ответ

2 голосов
/ 20 июля 2011
-(NSString *)dateDiff:(NSString *)origDate {
    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    [df setFormatterBehavior:NSDateFormatterBehavior10_4];
    [df setDateFormat:@"EEE, dd MMM yy HH:mm:ss VVVV"];
    NSDate *convertedDate = [df dateFromString:origDate];
    [df release];
    NSDate *todayDate = [NSDate date];
    double ti = [convertedDate timeIntervalSinceDate:todayDate];
    ti = ti * -1;
    if(ti < 1) {
        return @"never";
    } else      if (ti < 60) {
        return @"less than a minute ago";
    } else if (ti < 3600) {
        int diff = round(ti / 60);
        return [NSString stringWithFormat:@"%d minutes ago", diff];
    } else if (ti < 86400) {
        int diff = round(ti / 60 / 60);
        return[NSString stringWithFormat:@"%d hours ago", diff];
    } else if (ti < 2629743) {
        int diff = round(ti / 60 / 60 / 24);
        return[NSString stringWithFormat:@"%d days ago", diff];
    } else {
        return @"never";
    }   
}
...