iOS-OC根据时间戳获取距离现在的状态(刚刚,分钟前,今天,昨天)

获取时间戳

  1. - (NSString *)distanceTimeWithBeforeTime:(double)beTime
  2. {
  3. NSTimeInterval now = [[NSDatedate]timeIntervalSince1970];
  4. double distanceTime = now - beTime;
  5. NSString * distanceStr;
  6. NSDate * beDate = [NSDatedateWithTimeIntervalSince1970:beTime];
  7. NSDateFormatter * df = [[NSDateFormatteralloc]init];
  8. [df setDateFormat:@"HH:mm"];
  9. NSString * timeStr = [df stringFromDate:beDate];
  10. [df setDateFormat:@"dd"];
  11. NSString * nowDay = [df stringFromDate:[NSDate date]];
  12. NSString * lastDay = [df stringFromDate:beDate];
  13. if (distanceTime < 60) {//小于一分钟
  14. distanceStr = @"刚刚";
  15. }
  16. else if (distanceTime <60*60) {//时间小于一个小时
  17. distanceStr = [NSString stringWithFormat:@"%ld分钟前",(long)distanceTime/60];
  18. }
  19. else if(distanceTime <24*60*60 && [nowDayintegerValue] == [lastDay integerValue]){//时间小于一天
  20. distanceStr = [NSString stringWithFormat:@"今天 %@",timeStr];
  21. }
  22. else if(distanceTime<24*60*60*2 && [nowDayintegerValue] != [lastDay integerValue]){
  23. if ([nowDay integerValue] - [lastDay integerValue] ==1 || ([lastDay integerValue] - [nowDayintegerValue] > 10 && [nowDayintegerValue] == 1)) {
  24. distanceStr = [NSString stringWithFormat:@"昨天 %@",timeStr];
  25. }
  26. else{
  27. [df setDateFormat:@"MM-dd HH:mm"];
  28. distanceStr = [df stringFromDate:beDate];
  29. }
  30. }
  31. else if(distanceTime <24*60*60*365){
  32. [df setDateFormat:@"MM-dd HH:mm"];
  33. distanceStr = [df stringFromDate:beDate];
  34. }
  35. else{
  36. [df setDateFormat:@"yyyy-MM-dd HH:mm"];
  37. distanceStr = [df stringFromDate:beDate];
  38. }
  39. return distanceStr;
  40. }

iOS-OC根据时间戳获取距离现在的状态(刚刚,分钟前,今天,昨天)的更多相关文章

  1. iOS之计算上次日期距离现在多久, 如 xx 小时前、xx 分钟前等

    /**  *  计算上次日期距离现在多久  *  *  @param lastTime    上次日期(需要和格式对应)  *  @param format1     上次日期格式  *  @para ...

  2. iOS中利用CoreTelephony获取用户当前网络状态(判断2G,3G,4G)

    前言: 在项目开发当中,往往需要利用网络.而用户的网络环境也需要我们开发者去注意,根据不同的网络状态作相应的优化,以提升用户体验. 但通常我们只会判断用户是在WIFI还是移动数据,而实际上,移动数据也 ...

  3. iOS中利用CoreTelephony获取用户当前网络状态(判断2G,3G,4G) by徐文棋

    前言: 在项目开发当中,往往需要利用网络.而用户的网络环境也需要我们开发者去注意,根据不同的网络状态作相应的优化,以提升用户体验. 但通常我们只会判断用户是在WIFI还是移动数据,而实际上,移动数据也 ...

  4. iOS - OC 面向对象语法

    1.类 1)根类:因为类 NSObject 是层次结构的最顶层,因此称为根类. 可以将类称为子类(subclass)和父类(superclass),也可以将类称为子类和超类. 2)分类/类别(cate ...

  5. ios+oc面试题

    ios+oc面试题     浅复制和深复制的区别?//浅拷贝和深拷贝答案:浅层复制(copy):只复制指向对象的指针,而不复制引用对象本身.//通过对象的指针来访问这个对象深层复制(mutableCo ...

  6. iOS标准时间与时间戳相互转换

    iOS标准时间与时间戳相互转换 (2012-07-18 17:03:34) 转载▼ 标签: ios 时间戳 标准时间 格式 设置 转化 杂谈 分类: iPhone开发 设置时间显示格式:     NS ...

  7. ios 从网络上获取图片并在UIImageView中显示

    ios 从网络上获取图片   -(UIImage *) getImageFromURL:(NSString *)fileURL { NSLog(@"执行图片下载函数"); UIIm ...

  8. Java根据年龄段获取对应年份起始时间戳和最终时间戳、根据生日时间戳获取月份(与数据库的时间戳处理成的月份拼接成SQL条件)

    1.传入年龄段,两个值,一个最小值,一个最大值,然后获取该年龄段的两个时间戳: (1)处理时间方法: /** * 根据年龄获取时间戳(开始年龄key取0,返回一年最后一秒时间戳,时间戳大:反之结束年龄 ...

  9. iOS OC语言原生开发的IM模块--RChat

    iOS OC语言原生开发的IM模块,用于项目中需要原生开发IM的情况,具备发送文字.表情.语音.图片.视频等完整功能,包含图片预览视频播放等功能,此项目将会长期更新如有问题可以提出,我的邮箱:fshm ...

随机推荐

  1. css3 变形(transform)、转换(transition)和动画(animation)

    http://www.w3cplus.com/content/css3-transform/  在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动tr ...

  2. C#中Const和Readonly的区别

    const 的概念就是一个包含不能修改的值的变量.常数表达式是在编译时可被完全计算的表达式.因此不能从一个变量中提取的值来初始化常量.如果 const int a = b+1;b是一个变量,显然不能再 ...

  3. C++使用throw抛出异常

    引用:    c++ 使用throw抛出异常 抛出异常(也称为抛弃异常)即检测是否产生异常,在C++中,其采用throw语句来实现,如果检测到产生异常,则抛出异常.该语句的格式为:throw 表达式; ...

  4. 部署Office Web Apps Server并配置其与SharePoint 2013的集成

    部署Office Web Apps Server并配置其与SharePoint 2013的集成   Office Web Apps Server 是新的 Office 服务器产品,它提供 Word.P ...

  5. Expected MultipartHttpServletRequest: is a MultipartResolver configured?

    2015-05-05 19:09:47.510::WARN: /purchase/long-term-contract/uploading.htmjava.lang.IllegalArgumentEx ...

  6. MySQL数据库备份和还原的常用命令

    其实很多情况下mysql备份就是采用了这些命令,例如: mysql导入和导出数据 linux自动定时备份web程序和mysql数据库 备份MySQL数据库的命令 mysqldump -hhostnam ...

  7. ios如何生成crash报告

    #include <signal.h> #include <execinfo.h> void OnProcessExceptionHandler(int sigl) { do ...

  8. iOS 第三方自定义Alertview项目MBProcessHud中的重要代码分析

    做ios,弹出一个自定义的alertview挺常见的.ios7以前,我们可以对系统的UIAlertView进行一点操作,实现一点简单的定制,但是ios7不再允许我们这样做了.因此,我们需要自己创建一个 ...

  9. poj 2739 Sum of Consecutive Prime Numbers 解题报告

    题目链接:http://poj.org/problem?id=2739 预处理出所有10001以内的素数,按照递增顺序存入数组prime[1...total].然后依次处理每个测试数据.采用双重循环计 ...

  10. HTML5-------元素使用

    HTML5的元素使用