iOS时间转换(聊天时间)
2016-05-05 19:14
751 查看
因为最近用环信写了个聊天功能,想把用户的发送时间显示在界面上,但是当我获取环信消息的发送时间的时候发现他是以时间戳的形势存到消息中的。所以我必须把它转换为正常的时间形式并显示到界面上
所以我就封装了一个时间的转换类,把它了记录下来,下面就是代码了-挺简单的,比较容易理解
(1)TimeTool.h
(2)TimeTool.m
所以我就封装了一个时间的转换类,把它了记录下来,下面就是代码了-挺简单的,比较容易理解
(1)TimeTool.h
#import <Foundation/Foundation.h> @interface TimeTool : NSObject // 定义个类方法,用来返回转换后的时间形式 + (NSString *)timeStr:(long long)timestamp; @end
(2)TimeTool.m
#import "TimeTool.h" #import <UIKit/UIKit.h> @implementation TimeTool + (NSString *)timeStr:(long long)timestamp { // 创建日历对象 NSCalendar *calendar = [NSCalendar currentCalendar]; // 获取当前时间 NSDate *currentDate = [NSDate date]; // 获取当前时间的年、月、日。利用日历 NSDateComponents *components = [calendar components:NSCalendarUnitYear| NSCalendarUnitMonth|NSCalendarUnitDay fromDate:currentDate]; NSInteger currentYear = components.year; NSInteger currentMonth = components.month; NSInteger currentDay = components.day; // 获取消息发送时间的年、月、日 NSDate *msgDate = [NSDate dateWithTimeIntervalSince1970:timestamp / 1000.0]; components = [calendar components:NSCalendarUnitYear| NSCalendarUnitMonth|NSCalendarUnitDay fromDate:msgDate]; CGFloat msgYear = components.year; CGFloat msgMonth = components.month; CGFloat msgDay = components.day; // 进行判断 NSDateFormatter *dateFmt = [[NSDateFormatter alloc] init]; if (currentYear == msgYear && currentMonth == msgMonth && currentDay == msgDay) { //今天 dateFmt.dateFormat = @"HH:mm"; }else if (currentYear == msgYear && currentMonth == msgMonth && currentDay-1 == msgDay ){ //昨天 dateFmt.dateFormat = @"昨天 HH:mm"; }else{ //昨天以前 dateFmt.dateFormat = @"MM-dd HH:mm"; } // 返回处理后的结果 return [dateFmt stringFromDate:msgDate]; } @end
相关文章推荐
- iOS 图片上传旋转90°
- ios图片处理相关问题
- iOS利用Runtime自定义控制器POP手势动画
- iOS ftp上传文件
- iOS开发-由浅至深学习block
- 有关iOS学习方法拙见
- iOS run loop(NSRunLoop)和线程的一些需要注意的细节
- iOS 图片捏合放大缩小 点击放大缩小
- IOS 数组去重的几种方式
- Storyboard imageview 加tableview
- iOS每日一记——————————iOS开发当中的一些技巧
- iOS中利用 runtime 一键改变字体
- iOS 在价格数字中插入分隔符,逗号,点之类的方法和代码
- iOS指定位置拉扯图片
- iOS字符串替换,字符插入,字符删除
- iOS开发动画(Animation)图片360度不停旋转
- iOS的枚举
- iOS中atomic 与 nonatomic,assign,copy与retain的定义和区别
- iOS获取当前年、月、日等信息
- tableView的系统删除和点击删除