gpt4 book ai didi

ios - 即使我在清空数组后重新加载数据,Tableview cellForRowAt 也会崩溃?

转载 作者:搜寻专家 更新时间:2023-11-01 07:07:30 26 4
gpt4 key购买 nike

我一直在寻找如何解决我的应用程序中最大的问题之一,但即使我遵循此 iOS/Swift: tableView cellForRowAtIndexPath crash,我的问题仍然存在.根据我提供的链接,在我清空一个数组后,一定要记得重新加载数据。但是,问题依然存在,不知道如何解决。

一些登录 Crashlytics ...

我的 tableview cellForRowAt 函数,我也在 Storyboard中设置了单元格标识符。

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

// Crashed somewhere here
let currentRow = displayMainCell[indexPath.row]

guard let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as? MainCell else { return UITableViewCell() }


if currentRow.id == "wotd" {
cell.contentLabel.font = UIFont(name: "Helvetica Neue", size: 22)
} else {
cell.contentLabel.font = UIFont(name: "Helvetica Neue", size: 13)
}

cell.titleLabel.text = currentRow.title
cell.contentLabel.text = currentRow.content

return cell
}

已添加: 我的 didSelectRowAt 在不同的 View Controller 中也有问题。这是实现。

   func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

let currentRow = wordLists[indexPath.row]

textField.text = currentRow

let currentWordToSearch = currentRow.condenseWhitespace().lowercased()
indicator.startAnimating()

saveWordToHistory(currentWordToSearch)
fetchWordFromDB(currentWordToSearch)
wordChange(wordToEncode: currentWordToSearch, uuid: getDeviceID())

wordLists = []
tableView.reloadData()
setupDatabase(suggWords: currentWordToSearch)
tableView.isHidden = true

textField.resignFirstResponder()
}

最佳答案

检查以下函数是否返回常量值。它应该是这样的:

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

如果你已经这样做了。我建议您尝试以下代码:

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

guard let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as? MainCell else { return UITableViewCell() }

if arrayName.count != 0 {
let currentRow = displayMainCell[indexPath.row]

if currentRow.id == "wotd" {
cell.contentLabel.font = UIFont(name: "Helvetica Neue", size: 22)
} else {
cell.contentLabel.font = UIFont(name: "Helvetica Neue", size: 13)
}

cell.titleLabel.text = currentRow.title
cell.contentLabel.text = currentRow.content
}
return cell
}

关于ios - 即使我在清空数组后重新加载数据,Tableview cellForRowAt 也会崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47130864/

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