Ios 如何支持滑动以删除具有合成布局的UICollectionView列表中的行?

Ios 如何支持滑动以删除具有合成布局的UICollectionView列表中的行?,ios,uicollectionview,uikit,uicollectionviewcompositionallayout,Ios,Uicollectionview,Uikit,Uicollectionviewcompositionallayout,在以前的表视图中,这是在UITableViewDataSource委托回调tableView(u:commit:forRowAt:)中完成的。在与之相关联的API中是否有等效的功能或推荐的实现方法?用于创建布局的UICollectionLayoutListConfiguration,具有作为索引路径的函数的leadingswipeactionscoconfigurationprovider和trailingswipeactionscoconfigurationprovider属性。对于列表的不同

在以前的表视图中,这是在
UITableViewDataSource
委托回调
tableView(u:commit:forRowAt:)
中完成的。在与之相关联的API中是否有等效的功能或推荐的实现方法?

用于创建布局的UICollectionLayoutListConfiguration,具有作为索引路径的函数的
leadingswipeactionscoconfigurationprovider
trailingswipeactionscoconfigurationprovider
属性。对于列表的不同行,您的函数可以返回不同的滑动操作,或
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:)
留给读者作为练习;基本上,您只需执行与在任何集合视图中相同的操作。

用于创建布局的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:)
留给读者作为练习;基本上,您只需执行与在任何集合视图中相同的操作