以前在表视图中,这是在
UITableViewDataSource
委托回调 tableView(_:commit:forRowAt:)
中完成的。与新的集合视图相关的 API 中是否有等效的功能,或者推荐的实现方式?
用于创建布局的 UICollectionLayoutListConfiguration 具有
leadingSwipeActionsConfigurationProvider
和 trailingSwipeActionsConfigurationProvider
属性,它们是采用索引路径的函数。您的函数可以为列表的不同行返回不同的滑动操作或nil
:
var config = UICollectionLayoutListConfiguration(appearance: .plain)
config.trailingSwipeActionsConfigurationProvider = { indexPath in
let del = UIContextualAction(style: .destructive, title: "Delete") {
[weak self] action, view, completion in
self?.delete(at: indexPath)
completion(true)
}
return UISwipeActionsConfiguration(actions: [del])
}
写作
delete(at:)
留给读者作为练习;基本上,您只需做与在 any 集合视图中所做的完全相同的事情。