我有一个具有滑动操作的UITableView,当滑动: A)显示一个空白/空区域时,应该显示滑动操作按钮;和B)下面的行记录到Xcode中的调试控制台:
断言pullView不在视图层次结构中。这是一个UIKit错误。
到今天为止,搜索这个问题的标题的Google结果为零。
发布于 2020-01-08 17:40:13
结果发现罪魁祸首是
override func setEditing(_ editing: Bool, animated: Bool) {
super.setEditing(editing, animated: animated)
if !editing {
rowSelectionState.removeAll()
loadData()
}
refreshView()
}具体来说,包含一个refreshView()调用的tableView.reloadData()调用需要在if !editing { ... }块中。如果没有,则在启动一个滑动操作时,该滑动操作似乎调用了setEditMode(true, ...),因此调用了tableView.reloadData(),这破坏了UISwipeActionsConfiguration正确显示的能力。
因此,上面的内容应该如下所示:
override func setEditing(_ editing: Bool, animated: Bool) {
super.setEditing(editing, animated: animated)
if !editing {
rowSelectionState.removeAll()
loadData()
refreshView()
}
}https://stackoverflow.com/questions/59651135
复制相似问题