美文网首页糖糖的iOS专题我收录的代码Swift编程
计算时间差,可返回天,时分秒等等

计算时间差,可返回天,时分秒等等

作者: 我的梦想之路 | 来源:发表于2016-06-22 12:16 被阅读424次

    方法的定义

    #import <Foundation/Foundation.h>
    @interface UserCommon : NSObject
    /// 计算消息发出的时间差
    + (NSString *)getMessageDateCompare:(NSString *)strDate;
    
    @end
    
    

    方法的实现

    /// 计算消息发出的时间差
    + (NSString *)getMessageDateCompare:(NSString *)strDate{
        // 获取现在的时间
        NSDate *now = [NSDate date];
        // 创建时间管理器
        NSDateFormatter *fmt =[[NSDateFormatter alloc]init];
     
        /*  1. 按照这个时间格式将时间截取成字符串
          根据你时间字符串格式 规定时间格式
          yyyy-MM-dd HH:mm:ss/yyyy-MM-dd /EEE MMM dd HH:mm:ss Z yyyy(Tue Sep 30 17:06:25 +0800 2014)
        */
        fmt.dateFormat = @"yyyy-MM-dd HH:mm:ss";
    
        /* 2. 将时间字符串转化成时间*/
        NSDate *fromdate=[fmt dateFromString:strDate];
        
        /* 3.创建个日历 进行比较时间的间隔*/
        NSCalendar *calendar = [NSCalendar currentCalendar];
        // 确定返回什么时间的的参数(是个枚举值,你可以取你想要的格式,年月日,时分秒,周,星期等)
        NSCalendarUnit unit = NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;
        // 两个时间点距离的时间段
        NSDateComponents *cmps = [calendar components:unit fromDate: fromdate toDate:now options:0];
     
        // 返回的时分秒 (这里你也可以直接返回一个NSUInteger类型的数字)
        if (cmps.day >=1) {
            return [NSString stringWithFormat:@"%zd天前",cmps.day];
        }else if(cmps.hour >= 1){
            return [NSString stringWithFormat:@"%zd小时前",cmps.hour];
        }else if(cmps.minute >= 1){
            return [NSString stringWithFormat:@"%zd分钟前",cmps.minute];
        }else{
            return [NSString stringWithFormat:@"%zd秒前",cmps.second];
        }
    }
    

    方法的调用

    // 时间处理
        if ([[dict objectForKey:@"SEND_TIME"] isEqual:[NSNull null]]) {
            [cell.messageDate removeFromSuperview];
        }else{
            
            cell.messageDate.text = [UserCommon getMessageDateCompare:[dict objectForKey:@"SEND_TIME"]];
        }
    

    相关文章

      网友评论

        本文标题:计算时间差,可返回天,时分秒等等

        本文链接:https://www.haomeiwen.com/subject/lrxndttx.html