gpt4 book ai didi

swift - "Index out of range"一个 Viewcontroller 中有两个 Tableview 时出错

转载 作者:行者123 更新时间:2023-11-28 05:41:39 26 4
gpt4 key购买 nike

我在一个 ViewController 中有两个 Tableview。但是如果我运行这个我的代码,我会在 let post = posts[indexPath.row] 行得到这个错误:

"Index out of range"

我认为它与 posts.count 有关,但我无法弄清楚。当我在没有第二个 Tableview Tableview_moremaps 的情况下运行此代码时,一切正常。

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if comments.count == 0 {
self.tableView.setEmptyMessage("No comments yet!")
} else {
self.tableView.restore()
}

if posts.count == 0 {
self.Tableview_moremaps.setEmptyMessage("No other maps yet!")
}else{
self.Tableview_moremaps.restore()
}

if tableView == tableView {
return comments.count
}else{
return posts.count
}

}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

if tableView == self.tableView {
let cell = tableView.dequeueReusableCell(withIdentifier: "Comment", for: indexPath) as? CommentTableViewCell
let comment = comments[indexPath.row]
cell?.comment = comment
cell?.delegate = self

return cell!
} else if tableView == Tableview_moremaps {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell") as? MoremapsTableViewCell
cell?.Map_image.image = nil
let post = posts[indexPath.row]
cell?.post = post
cell?.delegate = self
return cell!
}

return UITableViewCell()
}

最佳答案

numberOfRowsInSection 中,更新 if-condition

   if tableView === self.tableView {
return comments.count
} else {
return posts.count
}

目前 tableView == tableView 始终为 true 并且返回值为 comments 计数。

关于swift - "Index out of range"一个 Viewcontroller 中有两个 Tableview 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56540878/

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