0

我有一个 UICollectionView,它附有一个长按手势。当我按下单元格时它工作正常,但如果触摸区域不是单元格,则应用程序崩溃并显示 EXC_BREAKPOINT

它崩溃了

if let indexPath : NSIndexPath = collectView.indexPathForItemAtPoint(point)! { 

线。我相信我需要检查该点实际上是一个单元格,但我不确定要检查什么

代码如下

@IBAction func longPressCell(sender: UILongPressGestureRecognizer) {
    if (sender.state == UIGestureRecognizerState.Began) {
        if let point : CGPoint = sender.locationInView(self.collectionView) {
            if let collectView = self.collectionView {
                if let indexPath : NSIndexPath = collectView.indexPathForItemAtPoint(point)! {
                    let adopt : UserPet = self.fetchedResultsController.objectAtIndexPath(indexPath) as! UserPet
                    NSLog("Adopt: \(adopt)")
                }
            }
        }

    }
}
4

1 回答 1

0

collectView.indexPathForItemAtPoint(point) != nil { 解决了

于 2016-05-23T10:47:09.067 回答