Swift 對時間的顯示樣式處理(朋友圈、微博發(fā)布時間)

顯示時間需求.jpg

廢話沒有,直接看代碼

  extension NSDate {
//對時間的處理
//傳入的時間戳精確到毫秒
    public  class func created_at(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 "\(interval / 60)分鐘前"
    }
    // 處理小于一天的時間
    if interval < 60 * 60 * 24 {
        return "\(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
 }

}
1B0221AF85DA4D4D89ABCFCD20ED7245.jpg
注意需要精確到毫秒的時間戳哦,復制這段代碼去試試吧????????????
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,716評論 25 709
  • 開發(fā)了將近一年的項目,不停的重復著做一些重復的事。其中有很多是在更新迭代以及再開發(fā)的過程中,不斷得以改進的地方。對...
    gzejia閱讀 278評論 0 1
  • 昨天,情人節(jié)加元宵節(jié),特別的日子,聽說19年輪回一次,下一次就肯定就老啦。昨天本來計劃去 爬山踏青,孰知睡過頭啦,...
    那個流沙閱讀 216評論 0 1
  • 一、產品信息 1.產品名稱:Instagram 2.版本號v40.0 3.體驗環(huán)境 手機版本:iPhone x i...
    神經三只羊閱讀 4,101評論 0 2
  • 17年11月10日,用手機打開收音機,信號總是不好,滋滋啦啦的聲音一直不斷,換了各個方向總也調不好,心里有點沮喪。...
    清水之味閱讀 160評論 0 0

友情鏈接更多精彩內容