我有一个
places = ArrayList<ArrayList<LatLng>>
我加入经纬度点到内部的ArrayList,然后我有一个for循环,循环,并增加了折线的地图..除了它没有做到这一点...我怎么能动态地添加折线到GoogleMap的? 我检查的地方是否正在填充,它是。
提前致谢。
ArrayList<Polyline> pl = new ArrayList<Polyline>();
for(int i =0; i<places.size(); i++){
pl.add(mMap.addPolyline(new PolylineOptions().addAll(places.get(i))));
Log.e("size of places", "size of places is " + places.size());
}
一旦你有纬度在你的列表中的经度的列表,你可以使用下面画线。
List<LatLng> points = decodePoly(_path); // list of latlng
for (int i = 0; i < points.size() - 1; i++) {
LatLng src = points.get(i);
LatLng dest = points.get(i + 1);
// mMap is the Map Object
Polyline line = mMap.addPolyline(
new PolylineOptions().add(
new LatLng(src.latitude, src.longitude),
new LatLng(dest.latitude,dest.longitude)
).width(2).color(Color.BLUE).geodesic(true)
);
}
以上我的应用程序为我工作
采用折线和ArrayList在地图中添加多个点
ArrayList<LatLng> coordList = new ArrayList<LatLng>();
// Adding points to ArrayList
coordList.add(new LatLng(0, 0);
coordList.add(new LatLng(1, 1);
coordList.add(new LatLng(2, 2);
// etc...
// Find map fragment. This line work only with support library
GoogleMap gMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap();
PolylineOptions polylineOptions = new PolylineOptions();
// Create polyline options with existing LatLng ArrayList
polylineOptions.addAll(coordList);
polylineOptions
.width(5)
.color(Color.RED);
// Adding multiple points in map using polyline and arraylist
gMap.addPolyline(polylineOptions);
什么是places
变量,你必须,因为地方需要在生产线上的所有位置,而不仅仅是1点。
因此,假如地方是ArrayList<LatLng>
然后通过执行places.get(i)
,你只给一个点,不能点的整个列表;