ios - 在 TableViewController 中呈现嵌套数组

标签 ios arrays swift uitableview

对不起,如果这只是 Swift 中表格的基本概念,但我对 Swift 还是很陌生,并且花了很长时间试图弄清楚这一点,但没有运气。

我有一个名为“数据”的数组,其结构如下:

var Data = [
["Alex","25","Male","258475"],
["Sean","29","Male","145737"],
["Grace","34","Female","295049"],
...
]

我想在 TableViewController 中显示它,这样每个单元格都包含名称、年龄、性别和 ID。我发现的大多数示例都以不同的方式使用数据结构:
var Data = [
["Alex","Sean","Grace"],
["25","29","34"],
["Male","Male","Female"],
...
]

有没有办法使用我拥有的数据结构并将其呈现在表格 View 的行中?或者我会更好地重组我的数据吗?谢谢。

最佳答案

在我看来,有几种方法可以做到这一点。您可以创建一个包含每个人的结构并拥有一个数组。像这样的东西。

struct Person {
   var name: String 
   var age: String
   var gender: String
   var id: String
}

然后将数据存储在数组中
var data = [Person]
然后在您的表格单元格中,您可以设置为要显示的每个项目都有一个标签。

或者,您可以获得想要在默认单元格文本区域中显示的信息的一种肮脏的方式是将字符串连接在一起作为单个字符串。
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: textCellIdentifier, for: indexPath)
    var cellText = ""
    let row = indexPath.row
    for x in data[row]{
        cellText = cellText + ", " + x
    }
    cell.textLabel?.text = cellText

    return cell
    }

在上面我们在data数组中找到对应于行号的数组,然后我们循环遍历该数组,将所有字符串加在一起得到1个大字符串,然后将该字符串显示在表格中。

这是一个教程,它很好地概述了可能会有所帮助的 TableView 。
https://www.codingexplorer.com/getting-started-uitableview-swift/

关于ios - 在 TableViewController 中呈现嵌套数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61987069/

相关文章:

iOS In App Purchase 在 invalidProductIdentifiers 数组中获取产品 ID

ios - UINavigationBar 没有出现

iphone - 我怎样才能得到iPhone中两个时间之间的差异?

arrays - Matlab中反转数组顺序

arrays - 优化循环、从外部文件传递参数、在 awk 中命名数组参数

ios - 正则表达式搜索效率

ios - 滚动时收藏 View 图像闪烁

c - C 中的二维结构数组 - 如何声明和使用

ios - Swift:NSDateFormatter dateFromString 在设备上返回 nil

ios - 内存问题decodeObjectForKey(Swift项目)