我有代码将数字存储在标签的数组中。
@IBAction func MSSave(_ sender: UIButton) {
MSarrayResults.removeAll()
if let MSText = displayResultLabel.text {
let result = "\(MSText)"
MSarrayResults.append(result as AnyObject)
print ("\(MSText)")
}
}
按钮在屏幕上显示数组(displayResultLabel)
@IBAction func MRRead(_ sender: UIButton) {
displayResultLabel.text = "\(MSarrayResults)"
}
但是当我将数组插入标签括号时出现(看照片)。
答案 0 :(得分:2)
你在做什么:
extension Date {
var fullDay: DateInterval {
let fullDayInterval = Calendar.current.dateInterval(of: .day, for: self)!
let endOfDay = Date(timeInterval: -0.00001, since: fullDayInterval.end)
return DateInterval(start: fullDayInterval.start, end: endOfDay)
}
}
将文本设置为"默认字符串表示"一个数组。这通常看起来像这样(如果数组中有5个数字):
displayResultLabel.text = "\(MSarrayResults)"
或者,正如您所见:
[5, 7, 85, 13, 9]
如果数组中只有一个数字。
基本上,它是一个人类可读的"表示。
如果要将文本设置为数组中的第一个元素,可以使用:
[85]
或:
displayResultLabel.text = "\(MSarrayResults.first)"
但是,由于displayResultLabel.text = "\(MSarrayResults[0])"
函数在附加新字符串之前删除 MSSave()
中的所有元素,因此使用数组没有任何意义什么时候你可以简单地使用一个String变量。