【发布时间】:2014-12-02 03:56:18
【问题描述】:
我监控当前位置并注册GoogleMap.MyLocationChangeListener。我想画一条代表我自己路线的折线(地图上的轨迹)。在每次位置更新时,我想向路线添加新点,以便更新地图上的轨迹。
这是我的代码不起作用:
private GoogleMap mMap;
private boolean drawTrack = true;
private Polyline route = null;
private PolylineOptions routeOpts = null;
private void startTracking() {
if (mMap != null) {
routeOpts = new PolylineOptions()
.color(Color.BLUE)
.width(2 /* TODO: respect density! */)
.geodesic(true);
route = mMap.addPolyline(routeOpts);
route.setVisible(drawTrack);
mMap.setOnMyLocationChangeListener(this);
}
}
private void stopTracking() {
if (mMap != null)
mMap.setOnMyLocationChangeListener(null);
if (route != null)
route.remove();
route = null;
}
routeOpts = null;
}
public void onMyLocationChange(Location location) {
if (routeOpts != null) {
LatLng myLatLng = new LatLng(location.getLatitude(), location.getLongitude());
routeOpts.add(myLatLng);
}
}
如何在折线中添加点,使更改反映在 UI 中?现在折线没有渲染。
我使用的是最新的play-services:6.1.71(截至此日期)。
【问题讨论】:
标签: android google-maps