【发布时间】:2021-02-20 18:01:14
【问题描述】:
我有两个文件。第一个是包含 UICollectionView 的 UIViewController。第二个是 UICollectionViewCell,它类似于单元格笔尖的 ViewController。它管理单元格内的所有操作,例如,如果用户单击单元格内的点赞按钮。
当用户单击赞按钮时,我会打印包含赞按钮的单元格的 IndexPath。所有单元格都包含一个赞按钮,但我想知道用户单击赞按钮的单元格的 IndexPath。
我的问题是如何将此 IndexPath 传达给 UIViewController?我想这样做是因为我的 UIViewController 存储了整个数据(在一个数组中),并且我想使用 IndexPath 访问这些数据的特定部分。另一种可能性是将这些数据存储在 UICollectionViewCell 文件中,但这不是一个好方法。
【问题讨论】:
-
swiftiest 方式是一个回调闭包,它传递可以从中获取索引路径的单元格。如果集合视图项的顺序永远不会改变,您甚至可以使用捕获的索引路径。
-
这是我前段时间做的一个例子:stackoverflow.com/a/64508719/14351818
标签: ios swift xcode uicollectionview uicollectionviewcell