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. python声明文件编码,必须在文件的第一行或第二行

    #coding=utf-8和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型 注意的两点: 1.声明必须在文件的第一行或第二行: 2.coding后面必须紧跟冒号或等号,#c ...

  2. 23.跳台阶问题[Fib]

    [题目] 一个台阶总共有n级,如果一次可以跳1级,也可以跳2级.求总共有多少总跳法,并分析算法的时间复杂度. [分析] 首先我们考虑最简单的情况.如果只有1级台阶,那显然只有一种跳法.如果有2级台阶, ...

  3. Android 中的selector

    今天做程序时,发现了selector 选择器不单单能用系统的自定义属性(比如,  <item android:state_selected="true" android:co ...

  4. phpmyadmin 主机名自动补全

    2015年2月9日 14:29:25 新安装的phpmyadmin在登录界面中, 主机名的输入框没有自动补全功能, 导致每次都得手动输入ip地址 找到 phpmyadmin/libraries/aut ...

  5. elk+redis分布式分析nginx日志

    一.elk套件介绍 ELK 由 ElasticSearch . Logstash 和 Kiabana 三个开源工具组成.官方网站: https://www.elastic.co/products El ...

  6. ShortestPath:Layout(POJ 3169)(差分约束的应用)

                布局 题目大意:有N头牛,编号1-N,按编号排成一排准备吃东西,有些牛的关系比较好,所以希望他们不超过一定的距离,也有一些牛的关系很不好,所以希望彼此之间要满足某个关系,牛可以 ...

  7. web iphone css 兼容性

    解决IPHONE网页兼容(部分字号变大): body{-webkit-text-size-adjust:none;}

  8. js将map转换成数组

    /** * map转数组. * * @param {Map}map * map对象 * @return 数组 */ Share.map2Ary = function(map) { var list = ...

  9. ext树表+ZeroClipboard复制链接功能

    效果图:

  10. 【python】filter()

    来源:http://www.jb51.net/article/54316.htm filter函数: filter()函数可以对序列做过滤处理,就是说可以使用一个自定的函数过滤一个序列,把序列的每一项 ...