我有一个将数据存储在 CoreData 实体中的 UITableView。问题是在 UITableViewCell 中检索数据时,如果我尝试访问尚未访问的单元格。该应用程序将崩溃。我该如何防止这种情况发生?
我收到错误消息,指出数组索引超出该行的范围
let news = self.newsArray[indexPath.row] //
如果在尝试通过从 CoreData 实体获取数据来访问缓存版本之前访问所有内容并将其存储在 CoreData 中,则该应用程序将正常运行。现在我想让它工作,即使其中一些数据尚未初始化,应用程序也不会为用户崩溃,而是什么都不显示。
最佳答案
您需要检查数组是否确实在给定索引中有一个值,为此您可以根据索引值检查数组中元素的数量
if indexPath.row < self.newsArray.count
{
let news = self.newsArray[indexPath.row]
} else {
//set details to blank as per example
//cell.tile.text = ""
}
关于ios - 如何防止未初始化数据的快速 CoreData 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30473295/