iOS开发与应用iOS之常见功能集合iOS开发

【iOS】NSDate转换为距离当前的粗略时间

2016-01-14  本文已影响367人  狍子君

在移动开发中很有可能遇到需要展示几天前的,几分钟前的时间格式

IMG_0104.PNG

如上图

可以通过以下的简单地解决办法:

+(NSString *)dateIntelligentFormat:(NSDate *)date{
     NSInteger interval = fabs([date timeIntervalSinceNow]);
    if(interval < 60){
        return @"刚刚";
    }else if(interval < 60*60){
        NSInteger time = interval/60;
        return [NSString stringWithFormat:@"%ld分钟前",(long)time];
    }else if(interval < 24*60*60){
        NSInteger time = interval/60/60;
        return [NSString stringWithFormat:@"%ld小时前",(long)time];
    }else if(interval < 30*24*60*60){
        NSInteger time = interval/24/60/60;
        return [NSString stringWithFormat:@"%ld天前",(long)time];
    }else if(interval < 12*30*24*60*60){
        NSInteger time = interval/30/24/60/60;
        return [NSString stringWithFormat:@"%ld月前",(long)time];
    }else{
        NSInteger time = interval/12/30/24/60/60;
        return [NSString stringWithFormat:@"%ld年前",(long)time];
    }
}
上一篇 下一篇

猜你喜欢

热点阅读