我在使用淡入淡出效果删除tableview中的单元格时面临一个未知问题。以下是删除单元格的代码
[self.recordArray removeObjectAtIndex: indexPath.row];
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]
withRowAnimation:UITableViewRowAnimationFade];
当我执行删除滑动操作时,应用程序正在挂起。可以建议这里有什么问题吗?
我在scrollViewDidScroll
委托中编写了几行for循环代码。它是否导致挂桌,但据我所知,滚动视频滚动'在用户触摸时调用。请建议。
答案 0 :(得分:1)
[YourArray removeObjectAtIndex:indexPath.row];
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation: UITableViewRowAnimationFade];
不要在indexpath使用“[NSArray arrayWithObject:indexPath]”,而只使用要删除的索引路径。
答案 1 :(得分:0)
例如,在swift中,您可以使用tableView的委托中的editActionsForRowAt
。所以你可以使用以下代码:
func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? {
let delete: UITableViewRowAction = UITableViewRowAction(style: .default, title: "Delete", handler: {
(rowAction: UITableViewRowAction, indexPath: IndexPath) in
self.recordArray.remove(at: indexPath.row)
self.recordTableView.reloadData()
})
return [delete]
}
就是这样。