Iphone 带有 google 地图 + UIView 的应用不响应滑动手势

Iphone App with google maps + UIView does not respond to swipe gestures

我创建了一个测试项目,它有一个 UIViewController。声明为 xib 的 UIView (myView) 它有一个图像和 3 个按钮

我正在以编程方式将 UIView 添加到 UIViewController,并在 UIViewControllerviewDidLoad 方法中向 UIView 添加滑动手势

swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeAction:)];
swipeRight.direction = UISwipeGestureRecognizerDirectionRight;
[myView addGestureRecognizer:swipeRight];
[self.view addSubview:myView];

一切正常。

然后我在 viewDidLoad

中再次将 google 映射添加到 UIViewcontroller
   // Create a GMSCameraPosition that tells the map to display the
    // coordinate -33.86,151.20 at zoom level 6.
   GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86
                                                            longitude:151.20
                                                                 zoom:6];
    mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera];
    mapView_.myLocationEnabled = YES;
    self.view = mapView_;

    // Creates a marker in the center of the map.
    GMSMarker *marker = [[GMSMarker alloc] init];
    marker.position = CLLocationCoordinate2DMake(-33.86, 151.20);
    marker.title = @"Sydney";
    marker.snippet = @"Australia";
    marker.map = mapView_;

第一个问题: myview 没有显示 --> 我将添加 UIView 的代码移动到 viewDidAppear.

现在可以看到视图,按钮有响应但是滑动手势不起作用

有什么想法吗?

由于以下行,您添加 myView 的视图将被您的地图视图替换:self.view = mapView_; 因此,您的视图不可见。

您应该将地图视图添加为子视图。尝试用 [self.view addSubview:mapView_]

替换该行