2

我想更新我的相机使其适合边界并以相同的动作滚动它,但我无法实现。如果我尝试同时做这两个但不同的动画,我会让自己处于地图(iPhone)的一个奇怪的地方。

上面的代码适用于模拟器,但不适用于 iPhone。

GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:_restCoord coordinate:_houseCoord];

GMSCameraUpdate *update = [GMSCameraUpdate fitBounds:bounds withPadding:190.0f];
[_mapView_ moveCamera:update];

GMSCameraUpdate *downwards = [GMSCameraUpdate scrollByX:0 Y:-90];
[_mapView_ moveCamera:downwards];

我看到Android的“CameraUpdateFactory”可以满足我的需求,iOS有类似的东西吗?我没找到。

提前致谢。

4

1 回答 1

1

iPhone 上的填充值介于 150 和 160 之间似乎存在问题。我的怀疑是 160 * 2 = 320,这大约是 iPhone 的点宽,因此我们要求地图的有界区域占据地图中的负空间。

此代码有效:

GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:_restCoord coordinate:_houseCoord];

GMSCameraUpdate *update = [GMSCameraUpdate fitBounds:bounds withPadding:150.0f];
[mapView moveCamera:update];

GMSCameraUpdate *downwards = [GMSCameraUpdate scrollByX:0 Y:-90];
[mapView moveCamera:downwards];
于 2013-09-18T00:58:42.580 回答