Android从坐标数组开始以编程方式在地图视图上绘制多边形
如何从坐标的字符串数组开始以编程方式在地图视图上绘制多边形?我的意思是:Android从坐标数组开始以编程方式在地图视图上绘制多边形,android,polygon,android-mapview,Android,Polygon,Android Mapview,如何从坐标的字符串数组开始以编程方式在地图视图上绘制多边形?我的意思是: separated[0] = "49.89760342670385 10.878719240427015" separated[1] = "49.89755850492233 10.878766849637032" separated[2] = "49.89760558640384 10.878866761922836" separated[3] = "49.89764748456432 10.87881579995155
separated[0] = "49.89760342670385 10.878719240427015"
separated[1] = "49.89755850492233 10.878766849637032"
separated[2] = "49.89760558640384 10.878866761922836"
separated[3] = "49.89764748456432 10.878815799951553"
separated[4] = "49.89760342670385 10.878719240427015"
ecc.
我需要像这样的东西:
map.addPolygon(new PolygonOptions()
.strokeColor(Color.BLUE)
.fillColor(Color.BLUE)
for(int i=0;i<separated.length;i++) {
String latlng[] = separated[i].split(" ");
LatLng cooordinatePoint = new LatLng((Double.parseDouble(latlng[0])), Double.parseDouble(latlng[1]));
add(cooordinatePoint)
}
);
map.addPolygon(新多边形选项()
.strokeColor(颜色.蓝色)
.fillColor(颜色.蓝色)
对于(int i=0;i我找到了一个有效的解决方案(但我不知道它是否是最好的):
LatLng[]跳线=新板条[separated.length];
对于(int i=0;i=Build.VERSION\u CODES.M){
addPolygon(新polygonooptions()
.strokeColor(颜色.蓝色)
.fillColor(颜色.蓝色))
.添加(跳线)
);
}
我引用了您的代码,获得了ArrayIndexOutboundsException
LatLng[] cord = new LatLng[separated.length];
for(int i=0;i<separated.length;i++) {
String stringTimmed = separated[i].trim();
String[] latlng = stringTimmed.split(" ");
LatLng cooordinatePoint = new LatLng((Double.parseDouble(latlng[0])), Double.parseDouble(latlng[1]));
cord[i] = cooordinatePoint;
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
map.addPolygon(new PolygonOptions()
.strokeColor(Color.BLUE)
.fillColor(Color.BLUE))
.add(cord)
);
}