如何获取集合视图单元格的indexPath

时间:2015-05-28 21:22:49

标签: ios swift uicollectionview uilongpressgesturerecogni

现在我的集合视图单元格中有一个longPressGesture。

@IBAction func longGesture(sender: AnyObject) {


    if sender.state == UIGestureRecognizerState.Began
    {
        let location = sender.locationInView(sender.view)
        println(location)
        let index = whoCollectionView.indexPathForItemAtPoint(location)
        println(index)

    }

}

这是我的longPressGesture代码。我在我的位置上得到了很好的结果但是除了collectionView中的最后一个单元之外的其他任何东西,我的索引都是零。在最后一个单元格上,索引为0.

我也尝试用self.view替换sender.view,但这也给我带来了奇怪的结果。当我这样做时,60%的长手势我没有回来。

1 个答案:

答案 0 :(得分:0)

 let location = sender.locationInView(sender.view)

locationInView需要是集合视图,以便它可以使用单元格框架进行计算。

尝试

let location = sender.locationInView(whoCollectionView.view)