【问题标题】:MKMapView in UICollectionViewCell, didSelectItemAtIndexPath not calledUICollectionViewCell 中的 MKMapView,没有调用 didSelectItemAtIndexPath
【发布时间】:2016-02-14 07:40:57
【问题描述】:

我有一个 UICollectionView,其中一些单元格包含一个 MKMapView。在 mapView 上的这些单元格中点击不会触发 UICollectionView 的 didSelectItemAtIndexPath,在所有其他单元格中它都可以正常工作。

我知道这可能是因为 MKMapView 拦截了点击,因此我已经关闭了地图视图可用的所有交互。

cell.mapView.userInteractionEnabled = NO;

但即使禁用了用户交互,当 mapView 在单元格中显示并点击时,也不会调用 didSelectItemAtIndexPath。

如何完全禁用 mapView 上的手势识别器以使其正常工作?

【问题讨论】:

    标签: ios objective-c mkmapview uicollectionviewcell


    【解决方案1】:

    经过更多试验后发现,当用户交互在代码中被禁用时(如问题所示),它可以工作,但不是从界面构建器中的设置。

    我已验证这是我的问题,IB 中 MapView 的“启用用户交互”设置在这种情况下无效。但是,在 collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *) 中以编程方式禁用用户交互可以正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-29
      • 1970-01-01
      相关资源
      最近更新 更多