如何在NSDate中计算和格式化一段时间

时间:2017-06-16 18:15:57

标签: swift time selector date-format nstimeinterval

我正在使用常规网络更新来组装应用程序。每次更新都会留下一个unix时间戳。现在我尝试创建一个编辑器,显示自上次更新以来经过的时间。我用这段代码汇总了unix时间戳:

import Cocoa

struct UnixConverter {

    static func converUnix(_ timestamp: Int) -> NSDate? {

        let date = NSDate(timeIntervalSince1970: TimeInterval(timestamp))

        return date
    }
} 

现在我得到这种格式的时间:“2017-06-16 17:47:45 +0000” 以下函数在NSTextFieldCell

中为我提供了实时推送更新
import Cocoa

 class ViewController: NSViewController {

    var timer = Timer()

    override func viewDidLoad() {
        super.viewDidLoad()

        // This function pushes the time NSTextFieldCell
        timer = Timer.scheduledTimer(timeInterval: 1.0,
                                        target: self, s
                                        elector: #selector(tick),
                                        userInfo: nil,
                                        repeats: true)
    }


    // This is the NSTextFieldCell formatter/ receiving container
    @objc func tick() {
        timerTextField.stringValue = DateFormatter.localizedString(from: NSDate() as Date, dateStyle: .medium, timeStyle: .medium)
    }
 }

现在我需要做的是“全部”,就是进行减法以获得差异。在这一点上,我必须承认我不知道如何做到这一点。之后,时间差必须推到NSTextFieldCell内。 如果有人能给我一个暗示怎么做,我会很高兴。

0 个答案:

没有答案