谷歌地图iOS

谷歌地图iOS,ios,xcode,ios6,maps,google-maps-sdk-ios,Ios,Xcode,Ios6,Maps,Google Maps Sdk Ios,我正在尝试在iOS的CGRect中插入谷歌地图。但下面的代码仍然在整个iPhone页面中显示地图。我该如何解决这个问题 CGRect rect = CGRectMake(50, 10, 200, 200); GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.8683 longitude:151.2

我正在尝试在iOS的
CGRect
中插入谷歌地图。但下面的代码仍然在整个iPhone页面中显示地图。我该如何解决这个问题

CGRect rect = CGRectMake(50, 10, 200, 200);
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.8683
                                                        longitude:151.2086
                                                             zoom:6];
mapView_ = [GMSMapView mapWithFrame:rect camera:camera];
mapView_.myLocationEnabled = YES;
self.view = mapView_;
GMSMarkerOptions *options = [[GMSMarkerOptions alloc] init];
options.position = CLLocationCoordinate2DMake(-33.8683, 151.2086);
options.title = @"Sydney";
options.snippet = @"Australia";
[mapView_ addMarkerWithOptions:options];

默认情况下,视图控制器的根视图会调整大小以填充屏幕

您需要添加一个单独的视图作为根视图,然后将地图视图添加到其中。例如:

self.view = [[UIView alloc] initWithFrame: CGRectZero];
[self.view addSubview: mapView_];

我发现使用谷歌地图视图的一个好方法是:

1-将新视图对象拖到控制器或视图上

2-相应的尺寸和位置

4-在标识检查器中将类设置为GMSMapView

5-使用助手控制拖动,将其作为属性提供给视图控制器


6-让所有内容都精确到编辑器中指定的大小,并将其视为已初始化的地图视图

我认为应该使用GMSMarkerOptions*options=[[GMSMarkerOptions alloc]initWithFrame:rect]@ArpitKumar:
GMSMarkerOptions
没有
initWithFrame
方法。请投票关闭,因为该方法已过时。api改变了很多。这已经不适用了