美文网首页
友好时间显示--swift版本

友好时间显示--swift版本

作者: 不言弃zxf | 来源:发表于2020-03-11 10:39 被阅读0次

// 友好时间显示

func friendlyTime(date:Double)->String{

  let myDate = NSDate.init(timeIntervalSince1970: date / 1000 )

  let fmt  = DateFormatter()

  fmt.dateFormat = "yyyy-MM-dd HH:mm:ss"

  fmt.locale = NSLocale(localeIdentifier: "en_US") as Locale?

  //获得当前时间

  let now = NSDate()

  //计算时间差

  let interval = now.timeIntervalSince(myDate as Date)

  // 处理小于一分钟的时间

  if interval < 60 {

      return "刚刚"

  }

  // 处理小于一小时的时间

  if interval < 60 * 60 {

      return "\(Int(interval) / 60)分钟前"

  }

  // 处理小于一天的时间

  if interval < 60 * 60 * 24 {

      return "\(Int(interval) / (60 * 60))小时前"

  }

    // 处理昨天时间

  let calendar = Calendar.current

  if calendar.isDateInYesterday(myDate as Date) {

      fmt.dateFormat = "昨天 HH:mm"

      let timeStr  = fmt.string(from: myDate as Date)

      return timeStr

  }

  //处理一年之内的时间

  let cmp  = calendar.dateComponents([.year,.month,.day], from: myDate as Date, to: now as Date)

  if cmp.year! < 1 {

      fmt.dateFormat = "MM-dd HH:mm"

      let timeStr  = fmt.string(from: myDate as Date)

      return timeStr

  }

  //超过一年的时间

  fmt.dateFormat = "yyyy-MM-dd HH:mm"

  let timeStr = fmt.string(from: myDate as Date)

  return timeStr

}

相关文章

网友评论

      本文标题:友好时间显示--swift版本

      本文链接:https://www.haomeiwen.com/subject/tuqqjhtx.html