【发布时间】:2021-01-15 17:21:34
【问题描述】:
我的 tableviewCell 中有两个按钮,确认并忽略这两个按钮应该在单击它成功删除单元格时删除单元格,但是当我刷新它时它会返回。单击忽略或确认时如何永久删除数组中的数据。
首先,该数组仅在 activityArray 中,但我需要对其进行过滤以获取待处理的活动。
if activities.count > 0 {
let filtered = activities.filter { $0.activityTypeAction == .FriendRequest || $0.activityTypeAction == .EventRSVPInvite }
if self.kCurrentPage == 0 {
self.activityArray.removeAll()
self.pendingActivityArray.removeAll()
}
self.activityArray.append(contentsOf: activities)
self.pendingActivityArray.append(contentsOf: filtered)
}
这就是我删除单元格的方式。
cell.onClinkedIgnoreCallback = {
self.pendingActivityArray.remove(at: indexPath.row)
self.NotificationTableView.deleteRows(at: [indexPath], with: .left)
self.NotificationTableView.reloadData()
}
cell.onClickedConfirmCallback = {
self.pendingActivityArray.remove(at: indexPath.row)
self.NotificationTableView.deleteRows(at: [indexPath], with: .left)
self.NotificationTableView.reloadData()
}
【问题讨论】:
-
如何刷新数据?通过从一个视图导航到另一个视图或重新加载表格视图?
-
@KrunalNagvadia 我正在重新加载表格视图。我有这个
if (indexPath.row == activityArray.count - 1) { loadMoreActivity() },在我的 loadMoreActivity 中有以下if activities.count > 0 {....},它在上面的代码中提供。 -
不相关但从不在
deleteRows之后立即调用reloadData。删除行确实会更新表视图。还有isEmpty用于集合类型和字符串,它比.count == 0更有效
标签: ios arrays swift uitableview