gpt4 book ai didi

ios - 多维数组转表

转载 作者:可可西里 更新时间:2023-11-01 02:01:56 25 4
gpt4 key购买 nike

我有一堆数组:

let CNSNRT = ["CNS", "NRT", 3637, 2113] as [Any]
let ADKANC = ["ADK", "ANC", 1192, 2200] as [Any]
let LAXMCE = ["LAX", "MCE", 259 , 2370] as [Any]
let ANCMCG = ["ANC", "MCG", 219, 2440] as [Any]
let ATLGLH = ["ATL", "GLH", 378, 2590] as [Any]
let CNSHKG = ["CNS", "HKG", 3450, 2728] as [Any]
let AKPFAI = ["AKP", "FAI", 253, 2960] as [Any]
let ADLKUL = ["ADL", "KUL", 3524, 2984] as [Any]

合并:

let routesArray = [CNSNRT, ADKANC, LAXMCE, ANCMCG, ATLGLH, CNSHKG, AKPFAI, ADLKUL]

使用 print(routesArray[0]) 我得到 ["CNS", "NRT", 3637, 2113] 并使用 print(routesArray[0 ][0] 我得到了 CNS,所以一切似乎都在正确引用。

但是,我无法弄清楚如何将它正确地放入 UITableView 中。基本上,routesArray 中的每个项目都应该是一个单元格,数组中的项目将定义单元格中的标签。

当前代码:

import UIKit

class ViewController: UIViewController, UITableViewDataSource {

@IBOutlet weak var routesTableView: UITableView!


func numberOfSections(in tableView: UITableView) -> Int {
return 1
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return routesArray.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = routesTableView.dequeueReusableCell(withIdentifier: "cellReuseIdentifier")!

let text = "\(routesArray[indexPath.row])"

cell.textLabel?.text = text

return cell
}


override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.

routesTableView.dataSource = self


}

生成一个表格,其中的行看起来像 ["CNS", "NRT", 3637, 2113] 但我无法弄清楚如何将它们分解以将它们应用于特定标签细胞。因此,例如 originLabel 应该显示 CNS 但在下一个单元格中,originLabel 应该显示 ADK

最佳答案

此时您访问给定的数组并使用以下方法将其转换为单个字符串:

let text = "\(routesArray[indexPath.row])"

由于您只需要单元格的 originLabel 中错误的第一个元素,因此您需要获取第一个元素。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = routesTableView.dequeueReusableCell(withIdentifier: "cellReuseIdentifier")!

let rowData = routesArray[indexPath.row]
if let firstStr = rowData.first as? String {
cell.originLabel = firstStr
}

return cell
}

仅供引用 - 您不应该强制展开对 dequeueReusableCell 的调用。它可以返回 nil 并且您的应用程序将崩溃。

关于ios - 多维数组转表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45662363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com