仿微博格式化时间字符串

.h文件

//格式化时间字符串

+ (NSString*)handleTimeType:(NSString*)date;

+ (NSString*)handleTimeTypeStr:(NSDate*)dateString;

.m文件

+ (NSString*)handleTimeTypeStr:(NSDate*)dateString{

NSDateFormatter*formatter = [[NSDateFormatteralloc]init];

formatter.dateFormat=@"yyyy-MM-dd HH:mm:ss";

NSString*dateStr = [formatterstringFromDate:dateString];

return[selfhandleTimeType:dateStr];

}

+ (NSString*)handleTimeType:(NSString*)date{

NSDateFormatter*formatter = [[NSDateFormatteralloc]init];

NSDate*currentDate = [NSDatedateWithTimeIntervalSinceNow:0];

formatter.dateFormat=@"yyyy-MM-dd HH:mm:ss";

NSDate*localDate = [formatterdateFromString:date];

if([selfisThisYear:localDate]) {

NSTimeIntervaltimeInterval =ABS([localDate timeIntervalSinceDate:currentDate]);

if(timeInterval <60) {

return@"刚刚";

}elseif(timeInterval <3600){

NSIntegerminuter = timeInterval /60;

return[NSStringstringWithFormat:@"%ld分钟前",(long)minuter];

}elseif(timeInterval <3600*24){

formatter.dateFormat=@"yyyy-MM-dd";

NSString*currentDateStr = [formatterstringFromDate:currentDate];

NSString*createAtStr = [formatterstringFromDate:localDate];

if([currentDateStrisEqualToString:createAtStr]) {

//是今天

NSIntegerhours = timeInterval /3600;

return[NSStringstringWithFormat:@"%ld小时前",(long)hours];

}else{

//是昨天

formatter.dateFormat=@"昨天HH:mm";

}

}else{

formatter.dateFormat=@"MM-dd HH:mm";

}

}else{

//不是今年

formatter.dateFormat=@"yyyy-MM-dd HH:mm";

}

return[formatterstringFromDate:localDate];

}

+ (BOOL)isThisYear:(NSDate*)createAt{

NSDateFormatter*formatter = [[NSDateFormatteralloc]init];

formatter.dateFormat=@"yyyy";

//获取年份

NSString*dateYearStr = [formatterstringFromDate:createAt];

//获取当前年份

NSString*currentYearStr = [formatterstringFromDate:[NSDatedate]];

return[dateYearStrisEqualToString:currentYearStr];

}

跟微博一样哦,我觉得还不错,分享给大家.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • .h文件 #import #define D_MINUTE60 #define D_HOUR3600 #defin...
    屈涯阅读 3,762评论 2 0
  • 一、获取系统时间并转化成字符串(打印出来是这个格式:yyyy-MM-dd HH:mm:ss) NSDate * d...
    爱恨的潮汐阅读 2,695评论 0 0
  • 做App避免不了要和时间打交道,关于时间的处理,里面有不少门道,远不是一行API调用,获取当前系统时间这么简单。我...
    沧海的风阅读 4,106评论 0 1
  • 简书,我无意间发现的写作平台。以前最先知道的,便是起点中文。因为我的一位高中同学,当然,后来他顺利成了我的同桌……...
    苏少白阅读 1,800评论 0 0
  • 一只小猪猪。
    桃之妖妖0102阅读 968评论 0 0