如何为变量分配实时时间

时间:2019-06-20 16:10:10

标签: swift timer

我有一个值字典(dataValues),最终将其显示在表格视图中。我需要在该字典中将当前时间显示为字符串。 dataValues是从模型文件中的“计算”应用程序获取其值的,我在其中执行计算。

我尝试将currentTime追加到dataValues,但是鉴于它是string类型的字典:任何明显的方法都行不通。

var dataValues : [String:Any]?

override func viewDidLoad() {
    super.viewDidLoad()

    dataValues = Calculations.shared.ecefToData()

    var timer = Timer()
    timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector:#selector(self.tick) , userInfo: nil, repeats: true)
}
var currentTime: String = "00:00:00"
@objc func tick() -> String {
     currentTime = DateFormatter.localizedString(from: Date(),
                                                     dateStyle: .short,
                                                     timeStyle: .medium)
    return currentTime
    print(currentTime)

}

}

我想将当前时间附加到dataValues并在应用程序中不断更新时间。

2 个答案:

答案 0 :(得分:0)

每次更新currentTime值时,您都需要重新加载tableView,但是我不确定这是处理该问题的最佳方法。

您可以改为将计时器直接绑定到表视图单元格上的标签,并使其重复更新?

答案 1 :(得分:0)

我解决了我的问题。如果索引行等于零,我只是选择将当前时间分配给detailView.text标签,因为我想在表格视图的第一行中显示时间。