我已经与 google maps ios sdk 斗争了几个小时,但我遇到了一个我无法解决的问题。所以这就是正在发生的事情:
我在界面生成器中有一个视图控制器,并用它实现了 .m 和 .h 。视图控制器有一个视图,在该视图内部还有另一个视图,它是保存地图的视图,因此在自定义类的身份检查器中,它被设置为 GMSMapView。
这个视图有一个 .h 实现的出口,它被称为 mapView。在 .m 上,我有以下代码:
- (void)viewDidLoad
{
[super viewDidLoad];
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:10.49101
longitude:-66.902061
zoom:4];
self.mapView = [GMSMapView mapWithFrame:[self.mapView bounds] camera:camera];
self.mapView.myLocationEnabled = YES;
GMSMarkerOptions *options = [[GMSMarkerOptions alloc] init];
options.position = CLLocationCoordinate2DMake(-33.8683, 151.2086);
options.title = @"Sydney";
options.snippet = @"Australia";
[self.mapView addMarkerWithOptions:options];
}
如您所见,我创建了相机,然后创建了带有界面构建器(mapView)上的视图边界的地图。现在这是行不通的:
1)无论我输入什么坐标,地图总是从英格兰开始,我相信(0,0)坐标 2)我的位置没有出现 3)标记也没有出现。4) 重要提示:地图正在出现,但始终在英格兰上空。
老实说,我不知道发生了什么,我相信它与 -(void)viewDidLoad 因为如果我使用谷歌提供的代码在 loadView 方法上编写代码它可以工作,但这样做的问题是这样是您无法访问我在界面生成器上创建的视图。
非常感谢!