【问题标题】:GMSMapView Prevents UIScrollView from ScrollingGMSMapView 防止 UIScrollView 滚动
【发布时间】:2025-11-29 11:30:01
【问题描述】:

我有一个嵌套在 UIScrollView 中的 GMSMapView。我已关闭 GMSMapView 的滚动功能

mapView.settings.tiltGestures = false
mapView.settings.scrollGestures = false
mapView.settings.rotateGestures = false

但是,每当我尝试滚动视图以使 UIScrollView 滚动时,什么都没有发生。我该怎么做才能解决这个问题?

【问题讨论】:

    标签: ios swift google-maps-sdk-ios


    【解决方案1】:

    在 Swift 3.0 中

    mapView.settings.setAllGesturesEnabled(false)
    

    【讨论】:

      【解决方案2】:

      在 UIScrollView 中检测触摸手势(触摸 -> 检测哪个视图被触摸并根据此启用/禁用 UIScroll 视图的滚动。

      -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
          CGPoint locationPoint = [[touches anyObject] locationInView:self.view];
      CGPoint viewPoint = [myImage convertPoint:locationPoint fromView:self.view];
      if ([mapView pointInside:viewPoint withEvent:event]) {
         disable scrolling
      }
      }
      

      【讨论】: