gpt4 book ai didi

ios - 从 Tap Gesture 中获取特定的 Collection View 单元格

转载 作者:行者123 更新时间:2023-12-01 18:25:35 25 4
gpt4 key购买 nike

我有一个 UICollectionView 显示图像缩略图。网格中的每个 ImageView 都有一个点击手势。我的问题是,我怎样才能捕获被窃听的确切单元格?例如。 “点击索引 #43”。

附加评论

  • 点击手势是通过程序创建的,没有使用 Storyboard。
  • 我在这个项目中启用了 ARC 和 Story Board。

  • 这是我最接近的:

    UICollectionViewController
    -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
    cellForItemAtIndexPath:(NSIndexPath *)indexPath
    {
    int row = [indexPath row];

    CollectionViewCell *Cell = [collectionView
    dequeueReusableCellWithReuseIdentifier:@"Cell"
    forIndexPath:indexPath];
    // Enable tap gesture on each ImageView
    [Cell.ImageView setUserInteractionEnabled:YES];
    UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture)];
    [tapGesture setNumberOfTouchesRequired:1];
    [tapGesture setNumberOfTapsRequired:1];
    [tapGesture setDelegate:self];
    [Cell.ImageView addGestureRecognizer:tapGesture];

    Cell.ImageView.tag = row; // This tags correctly
    }


    - (void)tapShowImage // Also, for some reason,
    // - (void)handleTapGesture:(UITapGestureRecognizer *)sender
    // doesn't work. I get an invalid selector error.
    {
    NSLog(@"%i", Cell.ImageView.tag);
    // Doesn't work because I can't call Cell.ImageView.tag here.
    // Might be because I"m using SDWebImage to load the image
    // into the ImageView above but not sure.
    }

    最佳答案

    您无需为每个单元格添加点击识别器。您可以在 collectionView:didSelectItemAtIndexPath: 方法中获取被点击单元格的 indexPath。

    关于ios - 从 Tap Gesture 中获取特定的 Collection View 单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14078060/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com