Swift4.0之朋友圈时间格式

朋友圈时间格式
 //朋友圈时间
    func getShowFormat(requestDate:Date) -> String {
        
        //获取当前时间
        let calendar = Calendar.current
        //判断是否是今天
        if calendar.isDateInToday(requestDate as Date) {
            //获取当前时间和系统时间的差距(单位是秒)
            //强制转换为Int
            let since = Int(Date().timeIntervalSince(requestDate as Date))
            //  是否是刚刚
            if since < 60 {
                return "刚刚"
            }
            //  是否是多少分钟内
            if since < 60 * 60 {
                return "\(since/60)分钟前"
            }
            //  是否是多少小时内
            return "\(since / (60 * 60))小时前"
        }
        
        //判断是否是昨天
        var formatterString = " HH:mm"
        if calendar.isDateInYesterday(requestDate as Date) {
            formatterString = "昨天" + formatterString
        } else {
            //判断是否是一年内
            formatterString = "MM-dd" + formatterString
            //判断是否是更早期
            
            let comps = calendar.dateComponents([Calendar.Component.year], from: requestDate, to: Date())
            
            if comps.year! >= 1 {
                formatterString = "yyyy-" + formatterString
            }
        }
        
        //按照指定的格式将日期转换为字符串
        //创建formatter
        let formatter = DateFormatter()
        //设置时间格式
        formatter.dateFormat = formatterString
        //设置时间区域
        formatter.locale = NSLocale(localeIdentifier: "en") as Locale!
        
        //格式化
        return formatter.string(from: requestDate as Date)
    }


使用方法

                let requestDateString = "请求下来的"
                let formatter = DateFormatter()
               //时间字符串和以下时间格式对应
                formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
                formatter.locale = Locale.init(identifier: "en") as Locale!
                
                let requestDate = formatter.date(from: requestDateString)
                //显示时间
                timeLabel.text = getShowFormat(requestDate:requestDate!)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1,我十分感激简书APP 因为这让我养成了写作,记录,感恩魔力练习的好习惯。 2,我十分感激严叔叔 因为他给我推荐...
    CharlesGuLi阅读 3,911评论 0 0
  • 从前,晚上睡不着的时候,妈妈都会跟我和姐姐讲一段她同样的经历。 她说,她睡不着的时候,就躺下闭着眼睛,眼皮像羽毛一...
    王鹿阅读 1,805评论 0 0
  • 先说说记录这个的原因吧,关于限制UITextField的输入字数的各种需求,已经疲软了,工作几年中用的还真不少,有...
    半笑半醉間阅读 11,826评论 5 37
  • “人在一定的时间点 ,必须亲手结束一些东西,好让自己真正想要的来得快一些。”比如我们。
    oursky阅读 1,670评论 0 0

友情链接更多精彩内容