如何解决您如何支持滑动以删除具有组成布局的UICollectionView列表中的行?
以前使用表视图是在UITableViewDataSource
委托回调tableView(_:commit:forRowAt:)
中完成的。与the new collection views相关联的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 集合视图中执行的操作完全相同。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。