1

我正在开发一个显示 Google 地图的 Android 应用程序。我希望这张地图以用户位置为中心,并旋转到用户方向和倾斜。描述的行为可以在谷歌地图应用程序中看到;当您单击一次“位置”按钮时,地图会以您的位置为中心。当第二次单击时,它会实现所描述的行为。

如何使用 Google Maps API 实现这一目标?我可以以编程方式激活它吗?
有什么建议么?

4

2 回答 2

2

要将位置设置为地图的中心,请使用:

map.moveCamera(CameraUpdateFactory.newLatLng(new LatLng(lat, lng)));

那么你真的应该看看CameraPosition.Builder()文档中的类。您将在那里获得所有答案,但我将向您展示如何使用它的示例:

CameraPosition cameraPosition = new CameraPosition.Builder().
            target(location).
            tilt(degrees).
            zoom(zoom).
            bearing(bearing).
            build();
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
于 2013-07-02T11:17:52.077 回答
0

@Carnal 的回答很有帮助,但我认为它并不能完全回答您的问题。

不幸的是,谷歌还没有在谷歌地图 API 中实现这个功能,所以你必须手动完成。

首先,您需要CameraPosition像@Carnal 演示的那样创建一个。

其次,如果您希望地图以指南针的方式旋转,有很多关于获取指南针值的很棒的教程。这是一个:http.bearing() ://www.journal.deviantdev.com/android-compass-azimuth-calculating(使用您的属性的罗盘值CameraPosition

最后,调用map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));移动地图的“相机”

希望这可以帮助!

于 2016-12-03T23:35:25.943 回答