我想更新與當前時間的標籤。定時器問題呈現時間
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var label: UILabel!
let date = Date()
override func viewDidLoad() {
super.viewDidLoad()
Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(updateTime), userInfo: nil, repeats: true)
}
func updateTime(){
label.text = DateFormatter.localizedString(from: Date(), dateStyle: .none, timeStyle: .long)
}
}
當我使用在updateTime()
label.text = DateFormatter.localizedString(from: Date(), dateStyle: .none, timeStyle: .long)
我得到我想要
當我使用label.text = DateFormatter.localizedString(from: date, dateStyle: .none, timeStyle: .long)
計時器不工作的結果。有人可以解釋我嗎? ?
從我的理解我,如果我用一個日期,而不是日期(),那麼我需要一個定時器/計數器計數和計算。如果有這樣的建議?
非常感謝
P
'date'是一個恆定值。因此,即使每秒調用一次updateTime(),它也會每次將標籤設置爲相同的值。 – vacawama
@ vacawama.Thanks很多。我怎麼能代表顯示從日期和每分鐘/秒等計數的標籤? –
您是否試圖使標籤從'0:00'開始,然後每秒計數? – vacawama