Ios 如何在indexPath中安全地删除行
我认为这是一个相当愚蠢的问题,但我没有找到任何解决方案来安全地删除表视图中的行Ios 如何在indexPath中安全地删除行,ios,swift,tableview,indexpath,Ios,Swift,Tableview,Indexpath,我认为这是一个相当愚蠢的问题,但我没有找到任何解决方案来安全地删除表视图中的行 calendarTableView.deleteRows(at: indexPaths, with: .fade) 在删除行之前,我想先检查是否有行,因为如果在没有任何行可删除的情况下尝试删除,则当前会出现如下错误: '尝试从节0中删除第6行,该节在更新之前仅包含0行' 要显示/隐藏的阵列如下所示: var twoDimensionalArray = [ ExpandableNames(isExpanded
calendarTableView.deleteRows(at: indexPaths, with: .fade)
在删除行之前,我想先检查是否有行,因为如果在没有任何行可删除的情况下尝试删除,则当前会出现如下错误:
'尝试从节0中删除第6行,该节在更新之前仅包含0行'
要显示/隐藏的阵列如下所示:
var twoDimensionalArray = [
ExpandableNames(isExpanded: false, names: ["Amy", "Bill", "Zack", "Steve", "Jack", "Jill", "Mary"]),
]
无需管理两个阵列或将其从数据源中删除。 只需检查行数是否为!=0,然后再删除它
let numberOfRows = calendarTableView.numberOfRows(inSection: section)
安全地删除行,您应该确保删除前和删除后的行数相同,总计数==新计数(删除后)+删除计数删除行前从数据源数组中删除。安全的含义可能是什么?但是,您需要遵循一个简单的策略:删除行+同时从数据源中删除数据;因为它们必须同步,否则您会收到刚刚收到的错误消息。我不想从数据源中删除。我只希望我的表视图不再显示这些行。如果我选择隐藏节的行,则会调用此命令。我认为您需要在此处管理两个数组。一个用作表数据源,另一个用于对表数据源数组所做的更改。