我想使用谷歌地图SDK iOS版中,我在故事板创建并链接到通过一个IBOutlet视图控制器主视图的子视图(我把它叫做extraView,从UIView的子类)。 当我跟随在SDK入门指南中的步骤,将SDK工作得很好,但它使用的层次结构中的最上层视图(主视图),我不想要的。 我希望我的地图是在屏幕的一小部分,并使用屏幕的其余部分用于别的东西。 当我尝试分配mapView_对象(参阅入门指南)以self.extraView代替self.view,整个屏幕是黑的,我得到的控制台输出的错误:
“应用程序窗口,预计在应用程序启动的端部有一个根视图控制器”
有没有其他人想通了这一点? 我不能找到文档中任何东西,示例代码谷歌提供不使用故事板。
这是如何做...
- 添加一个UIView到视图控制器您在哪里工作
- 设置它的类是
GMSMapView
的身份检查。
然后,它控制拖动到你的代码,你会为任何其他出路。
您可以懒洋洋地实例在其制定者...
- (void) setMapView:(GMSMapView *)mapView {
if (!mapView) {
mapView = [[GMSMapView alloc] initWithFrame:mapView.bounds];
}
_mapView = mapView;
}
要显示地图谷歌的样本代码变得...
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:1.285
longitude:103.848
zoom:12];
self.mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
我解决我的问题只是删除,我从例子中接过的loadView代码。 只要添加一个视图sberley说的应该作品。
只是还有一点,在身份检查,你必须改变属性类,它至少是4.5的Xcode