前言
本文完成的效果相似於QQ空間裡的好友發表的靜態,會顯示好友發表的時間,這裡是處置顯示幾小時前,幾分鐘前,剛剛,昨天,前天這樣的格式,上面來一同看看吧。
一:剛剛,幾分鐘前,幾小時前
//時間 NSString *createdTimeStr = @"2017-01-01 21:05:10"; //把字符串轉為NSdate NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; NSDate *timeDate = [dateFormatter dateFromString:createdTimeStr]; //失掉與以後時間差 NSTimeInterval timeInterval = [timeDate timeIntervalSinceNow]; timeInterval = -timeInterval; long temp = 0; NSString *result; if (timeInterval < 60) { result = [NSString stringWithFormat:@"剛剛"]; }else if((temp = timeInterval/60) < 60){ result = [NSString stringWithFormat:@"%ld分鐘前",temp]; }else if((temp = timeInterval/3600) > 1 && (temp = timeInterval/3600) <24){ result = [NSString stringWithFormat:@"%ld小時前",temp]; }else{ result = createdTimeStr; } NSLog(@"%@",result);
二:剛剛,幾分鐘前,幾小時前,昨天,前天
//時間 NSString *createdTimeStr = @"2017-01-01 21:05:10"; //把字符串轉為NSdate NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; NSDate *timeDate = [dateFormatter dateFromString:createdTimeStr]; //失掉與以後時間差 NSTimeInterval timeInterval = [timeDate timeIntervalSinceNow]; timeInterval = -timeInterval; long temp = 0; NSString *result; if (timeInterval < 60) { result = [NSString stringWithFormat:@"剛剛"]; }else if((temp = timeInterval/60) < 60){ result = [NSString stringWithFormat:@"%ld分鐘前",temp]; }else if((temp = timeInterval/3600) > 1 && (temp = timeInterval/3600) <24){ result = [NSString stringWithFormat:@"%ld小時前",temp]; }else if ((temp = timeInterval/3600) > 24 && (temp = timeInterval/3600) < 48){ result = [NSString stringWithFormat:@"昨天"]; }else if ((temp = timeInterval/3600) > 48 && (temp = timeInterval/3600) < 72){ result = [NSString stringWithFormat:@"前天"]; }else{ result = createdTimeStr; } NSLog(@"%@",result);
總結
以上就是這篇文字的全部內容了,希望本文的內容對各位IOS開發者能帶來一定的協助,假如有疑問大家可以留言交流。
【iOS完成時間顯示幾分鐘前,幾小時前以及剛剛的辦法示例】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!