+ (NSString *)intervalSinceNow: (NSString *) theDate { NSDateFormatter *date=[[NSDateFormatter alloc] init]; [date setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; NSDate *d=[date dateFromString:theDate]; NSTimeInterval late=[d timeIntervalSince1970]*1; NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0]; NSTimeInterval now=[dat timeIntervalSince1970]*1; NSString *timeString=@""; NSTimeInterval cha=now-late; if (cha/3600<1) { timeString = [NSString stringWithFormat:@"%f", cha/60]; timeString = [timeString substringToIndex:timeString.length-7]; timeString=[NSString stringWithFormat:@"%@分鐘前", timeString]; if ([timeString isEqual: @"0分鐘前"]) { timeString = @"剛剛"; } } if (cha/3600>1&&cha/86400<1) { timeString = [NSString stringWithFormat:@"%f", cha/3600]; timeString = [timeString substringToIndex:timeString.length-7]; timeString=[NSString stringWithFormat:@"%@小時前", timeString]; } if (cha/86400>1) { // timeString = [NSString stringWithFormat:@"%f", cha/86400]; // timeString = [timeString substringToIndex:timeString.length-7]; // timeString=[NSString stringWithFormat:@"%@天前", timeString]; timeString = theDate; } return timeString; }
/原理是把你手機上的即時時間所有和1970年比較變成多少秒,而後將你所傳進來的時間參數一樣這樣處理,而後得出相差的秒,最後把相差的秒算出來就能夠獲得幾分鐘、幾小時、或者幾天前啦,這個文字能夠本身作修改~
code