【发布时间】:2013-06-08 21:08:58
【问题描述】:
我正在尝试使用fitBounds 方法将我的所有标记都放入谷歌地图相机视图中。所以我将我的标记存储在markersArray 中,并使用以下代码使用markersArray 中的第一个和第二个标记来初始化 GMSCoordinateBounds,这工作正常。
然后,当我尝试使用includingCoordinate 从markersArray 添加第三个标记时,我看不到边界在其值和地图中都没有更新任何内容,它是否相应地更改了相机。
奇怪的是,在Google maps SDK for iOS docs 中,它说 GMSCoordinateBounds “是不可变的,构造后不能修改”。那有意义吗?构建它们后我不能改变边界吗?那么如何在边界上添加更多坐标呢?
这是我的代码:
GMSCoordinateBounds *bounds= [[GMSCoordinateBounds alloc] init];
GMSMarker *marker1 = [markersArray objectAtIndex:0];
GMSMarker *marker2 = [markersArray objectAtIndex:1];
GMSMarker *marker3 = [markersArray objectAtIndex:2];
bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:marker1.position coordinate:marker2.position];
//Add the 3rd marker to the bounds
[bounds includingCoordinate:marker3.position];
GMSCameraUpdate *update = [GMSCameraUpdate fitBounds:bounds withPadding:600.0f];
[mapView_ animateWithCameraUpdate:update];
【问题讨论】:
标签: ios6 google-maps-markers google-maps-sdk-ios fitbounds