【问题标题】:How to Print Array in Label?如何在标签中打印数组?
【发布时间】:2017-12-25 23:03:57
【问题描述】:
我正在尝试将我的数组打印到我的标签中,但我没有找到任何方法。
这是我的数组。
var lapTime: [[Double]] = [[]]
我在标签中加入了一些很酷的东西
let str = NSString(format: "%.2f", rows[indexPath.row]["time"]! as! Double)
let arr = ??? // Here I Want to put my array
cell?.textLabel?.text = "\(indexPath.row + 1) -> \(str) -> \(arr)"
感谢您的帮助!
【问题讨论】:
标签:
ios
arrays
swift
xcode
cocoa-touch
【解决方案1】:
我假设你的lapTime 如下所示,
let lapTime: [[Double]] = [[33.34,22.876,34.0]]
方法一:
let arr = lapTime[0].map { (double) -> String in
return String(double)
}.joined()
self.label.text = arr
或
let arr = lapTime[0].map { (double) -> String in
return String(double)
}.joined(separator: ", ")
self.label.text = arr
方法二:
for time in lapTime[0]{
let arr = (self.label.text ?? "")+" "+String(time) //+"<space>"+ to +","+ if you need lap times are comma separated.
self.label.text = arr
}
注意:
lapTime == [[33.34,22.876,34.0],[33.34,22.876,34.0]]和你有一个UITableView,然后将lapTime[0]替换为lapTime[indexPath.row]。
让我知道你需要。
输出:
【解决方案2】:
在 swift 4.1 和 Xcode 9.4.1 中
我的数组是这样的......
array = ["BELT", "BUNKER", "CABLES/ACCESSORIES ", "CABLE", "CHUTES", "GOLD"]
lbl.text = array.joined(separator: ",")
输出是:
【解决方案3】:
您可以使用 string.Join 轻松连接 IEnumerables 和数组:
lblAnswer3.Text = string.Join(", ", number);
【解决方案4】:
试试
let arr = lapTime.map(String.init).joined()
cell?.textLabel?.text = "\(indexPath.row + 1) -> \(str) -> \(arr)"