Android - 使用google maps api动态更改标记的位置
我正在编写一个应用程序来跟踪向服务器发出当前坐标(经度和纬度)的设备 . 我正在尝试使用google maps api不断更新 Map 上的标记 . 但是,我在这方面一直很不成功 .
我正在从服务器解析数据,所以我有更新标记所需的坐标 . 但是,如果我执行marker.remove()或marker.setPosition(latilongi),则应用程序仅绘制已从服务器解析的最后一个坐标 .
如果有人对如何实现这种能够运行Android应用程序并看到标记动态更改的影响有任何见解,那将非常感谢!
提前致谢
回答(2)
听起来你想要使用 animateCamera()
或 updateCamera()
您可以在下面找到一些详细信息,但基本上如果您知道 Map 的新中心,您将执行以下操作:
public void centerMapAt(LatLng latLng) {
mMap.animateCamera(CameraUpdateFactory.newLatLng(latLng));
}
要么
public void centerMapAt(LatLng latlng, LatLngBounds bounds) {
int padding = 100;
CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(bounds, padding);
getMap().animateCamera(cameraUpdate);
}
有很多选择 .
http://developer.android.com/reference/com/google/android/gms/maps/CameraUpdateFactory.html
2 years ago
您可以使用它来移动标记与动画使用此:
这是代码:https://gist.github.com/broady/6314689
和视频:https://www.youtube.com/watch?v=WKfZsCKSXVQ