我正在使用xcode 8和swift 3.我制作了一个迷你游戏,您必须尽快回答问题。你有一个秒表计时器。我有实际存储时间的代码(例如23秒),但不是存储时间,而是用“Label”替换它。我的秒表标签被调低,显示值的label
被称为resultLabel
我被告知问题是当我设置标签的文本时。关于我需要修复它的任何想法。一个例子是[“Label”,“Label”,“Label”]
秒表代码:
if timerSecond != nil {
timerSecond?.invalidate()
timerSecond = nil
} else {
timerSecond = Timer.scheduledTimer(withTimeInterval: 1.0, repeats: true) { _ in
self.currentTime += 1
let minutePortion = String(format: "%02d", self.currentTime / 60 )
let secondsPortion = String(format: "%02d", self.currentTime % 60 )
self.down.text = "\(minutePortion):\(secondsPortion)"
}
}
用户默认值的扩展名:
extension UserDefaults {
var timesSecond: [String] {
get {
if let times = UserDefaults.standard.object(forKey: "times") as? [String] {
return times
} else {
return []
}
}
set {
UserDefaults.standard.set(newValue, forKey: "times")
}
}
}
显示值数组的按钮代码:
let arrayOfTimes = UserDefaults.standard.timesSecond
resultLabel.text = "\(arrayOfTimes)"
存储数据的代码:
UserDefaults.standard.timesSecond.append(resultLabel.text!)