如何找出在集合视图单元格中挖掘的集合视图单元格

时间:2017-05-20 08:57:08

标签: ios swift3 tableview collectionview

我有一个表视图,里面有一个集合视图。我想找出哪个集合视图单元被点击,以及相应的表视图单元格的indexpath.row。(现在我能够从didSelectRowAtIndexPath()获取集合视图单元格的indexpath.row但是无法找到哪个表视图单元格对应的单元格存在。)

2 个答案:

答案 0 :(得分:1)

尝试下面的代码,请告诉我它是否适合您:

- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{

    UICollectionViewCell *cell = [collectionView cellForItemAtIndexPath:indexPath];
    CGRect frame = [collectionView convertRect:cell.frame toView:tblView];
    NSIndexPath *tblIndexPath = [tblView indexPathForRowAtPoint:frame.origin];
}

答案 1 :(得分:-1)

首先进行一些修正。

集合视图委托方法不是didSelectItemAt didSelectRowAtIndexPath方法()。此外,由于您正在使用集合视图,因此使用indexPath.item而不是indexPath.row来获取项目编号(您可以使用row但是集合视图没有包含项目集合的行。因此使用{{1很直观)

现在,对于您的查询,您可以在表格视图的item中添加cell.tag = indexPath.row

现在,在您的集合视图委托方法cellForRowAtIndexPath:中,您可以使用collectionView(_:didSelectItemAt:) :来了解您的集合视图所在的表格视图单元格。