プロジェクトmapviewballonでライブラリ名 mapviewballoon を使用しました。
マップのさまざまな場所に 20、30 以上のピンを設定すると、中央の最後のピンにズームします。ズーム レベルは、マップ ビューにすべてのピンが表示されるようにすることです。
どうすればそれを解決できますか、または正しいズームを計算できますか?現在、14 を指定しています。
次のようにします。
OverlayItem overlayItem = null;
GeoPoint point = null;
for (int i = 0; i < nearbyObjMapList.size(); i++) {
if (!nearbyObjMapList.get(i).latitude.equals("0") && !nearbyObjMapList.get(i).longitude.equals("0")) {
Latitude = Float.parseFloat(nearbyObjMapList.get(i).latitude);
Longitude = Float.parseFloat(nearbyObjMapList.get(i).longitude);
point = new GeoPoint((int)(Latitude*1E6),(int)(Longitude*1E6));
overlayItem = new OverlayItem(point, nearbyObjMapList.get(i).venue_name, "");
itemizedOverlay.addOverlay(overlayItem);
}
}
if (thisState == null) {
final MapController mc = mapView.getController();
mc.animateTo(point);
mc.setZoom(14);
} else {
// example restoring focused state of overlays
int focused;
focused = thisState.getInt("focused_1", -1);
if (focused >= 0) {
itemizedOverlay.setFocus(itemizedOverlay.getItem(focused));
}
focused = thisState.getInt("focused_2", -1);
if (focused >= 0) {
temizedOverlay2.setFocus(itemizedOverlay2.getItem(focused));
}
}