【问题标题】:Google Map does not appear iOS sdk?谷歌地图没有出现iOS sdk?
【发布时间】:2014-04-07 11:25:35
【问题描述】:

我在我的应用中使用 Google Map iOS SDK,但我遇到了这个问题:

当我在 iOS 上使用谷歌示例时,它可以正常工作,但它会以全屏模式加载,因为它采用了 ViewController 中的主要 view

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.868
                                                        longitude:151.2086
                                                             zoom:6];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];

GMSMarker *marker = [[GMSMarker alloc] init];

marker.position = camera.target;
marker.snippet = @"Hello World";
marker.map = mapView;
self.view = mapView;

但我需要它在 subView 中,你知道因为工具栏或顶部栏什么的。

我将 subView 添加到 myViewController 并创建一个 IBOUtle 然后我将 mapView 链接到它,如下所示:

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.868
                                                        longitude:151.2086
                                                             zoom:6];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];

GMSMarker *marker = [[GMSMarker alloc] init];

marker.position = camera.target;
marker.snippet = @"Hello World";
marker.map = mapView;
mySubView = mapView;

但是视图将是白色/空的,没有加载地图/或添加为子视图,所以我尝试了以下方法,将子视图类型从 UIView 更改为 GMSMapView,这会使地图出现并加载。

我无法对这张地图做任何事情的奇怪问题,比如GMSMarker 没有出现,或者GMSCameraPosition 没有显示您的正确位置/不起作用。

【问题讨论】:

    标签: ios7 google-maps-sdk-ios


    【解决方案1】:

    如果您的插座是 UIView,并且您使用代码制作地图,则必须添加它。

    对象-C:

    mapView.frame = mySubview.bounds;
    [mySubview addSubview:mapView];
    

    斯威夫特:

    mapView.frame = mySubview.bounds;
    mySubview.addSubview(mapView)
    

    如果您的 OUTLET 是地图视图,请使用它,不要制作新的

    mapView = (GMSMapView*)mySubView;
    

    【讨论】:

    • thx :D 很多我注意到我忘记了关于“边界”的一切 :D thx
    • 是的“mySubView”它只是一个别名在这里使用它:P
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-06
    • 1970-01-01
    • 2015-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多