Ios UICollectionViewCell中的MKMapView,未调用didSelectItemAtIndexPath
我有一个UICollectionView,其中一些单元格包含一个MKMapView。在mapView上点击这些单元格不会触发UICollectionView的didSelectItemAtIndexPath,在所有其他单元格中都可以正常工作 我知道这可能是因为MKMapView拦截了点击,因此我关闭了mapview可用的所有交互Ios UICollectionViewCell中的MKMapView,未调用didSelectItemAtIndexPath,ios,objective-c,mkmapview,uicollectionviewcell,Ios,Objective C,Mkmapview,Uicollectionviewcell,我有一个UICollectionView,其中一些单元格包含一个MKMapView。在mapView上点击这些单元格不会触发UICollectionView的didSelectItemAtIndexPath,在所有其他单元格中都可以正常工作 我知道这可能是因为MKMapView拦截了点击,因此我关闭了mapview可用的所有交互 cell.mapView.userInteractionEnabled = NO; 但是,即使禁用了用户交互,当在单元格中显示并点击mapView时,也不会调用did
cell.mapView.userInteractionEnabled = NO;
但是,即使禁用了用户交互,当在单元格中显示并点击mapView时,也不会调用didSelectItemAtIndexPath
如何才能完全禁用mapView上的手势识别器以使其正常工作?经过一段时间的实验,结果表明,当在代码中禁用用户交互时(如问题中所述),而不是从interface builder中的设置中禁用时,它就可以正常工作
我已经验证了这是我的问题所在,IB中MapView的“用户交互启用”设置在这种情况下无效。但是,在collectionView:(UICollectionView*)cv cellForItemAtIndexPath:(NSIndexPath*)中以编程方式禁用用户交互可以正常工作。经过更多的实验,结果表明,在代码中禁用用户交互(如问题中所述)时有效,但在interface builder中的设置中无效 我已经验证了这是我的问题所在,IB中MapView的“用户交互启用”设置在这种情况下无效。但是,在collectionView:(UICollectionView*)cv cellForItemAtIndexPath:(NSIndexPath*)中以编程方式禁用用户交互可以正常工作