首页 > 解决方案 > 如何防止 TableView 崩溃?

问题描述

我有一个包含项目的数据模型。根据情况,我只想在 tableView 上显示 X 数量。问题是当我删除它崩溃的项目时。我正在使用前缀来返回我想显示的项目数量,如下所示:

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    switch Section(section) {
    case .image:
        return imageArray.prefix(3).count
    case .subscribe:
        return myArray.count
    }
}

我也收到此错误。请注意:如果我没有为 ImageArray 加上前缀,则一切正常:

'无效更新:第0节中的行数无效。更新后现有节中包含的行数(3)必须等于更新前该节中包含的行数(3),加上或减去从该部分插入或删除的行数(0 插入,1 删除)加上或减去移入或移出该部分的行数(0 移入,0 移出)。

任何帮助都会很棒,因为我已经坚持了很长一段时间。

谢谢

标签: iosswiftuitableviewuicollectionview

解决方案


在您的 cellforrow 中,您只需在单元格保护数组的声明下方添加保护方法。计数!= 0 否则返回单元格这不会让您的应用程序崩溃。


推荐阅读