gpt4 book ai didi

ios - 如何将表格 View 单元格计数值分配给编程 UILabel?

转载 作者:行者123 更新时间:2023-11-29 05:41:17 24 4
gpt4 key购买 nike

我以编程方式创建了一个 UILabel,并希望它显示 TableView 中的单元格数量。

我的 viewDidLoad() 中有以下代码

let lb = UILabel()
lb.textAlignment = .center
lb.numberOfLines = 0
lb.text = "Num of Cells: \(structure.count)"
lb.font = UIFont.boldSystemFont(ofSize: 18.0)

newView.addSubview(lb)

并希望为其分配以下struct.count值。

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

只需在 viewDidLoad() 中执行以下操作,就会生成 0,因为它会在 tableview 单元格加载之前加载:

lb.text = "Num of Cells: \(structure.count)"

一旦单元格全部加载到表格 View 中,如何将 Structure.count 值分配给标签?

结构填充如下:

    URLSession.shared.dataTask(with: request) { data, _, error in
guard let data = data else { return }


do {
self.structure = try JSONDecoder().decode([StructOne].self,from:data)
DispatchQueue.main.async {
self.tableView.reloadData()
}
}
catch {
print(error)
}

}.resume()

}

最佳答案

由于您是异步加载数据,因此无法更新 viewDidLoad 中的标签。填充结构后,您需要更新标签。

简单地移动:

lb.text = "Num of Cells: \(structure.count)"

位于 DispatchQueue.main.async block 内,并调用重新加载 TableView 。

关于ios - 如何将表格 View 单元格计数值分配给编程 UILabel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56519258/

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