リスト内のすべてのポイントが含まれるように、Androidでマップのズームレベルを設定しようとしています。私は次のコードを使用しています。
int minLatitude = Integer.MAX_VALUE;
int maxLatitude = Integer.MIN_VALUE;
int minLongitude = Integer.MAX_VALUE;
int maxLongitude = Integer.MIN_VALUE;
// Find the boundaries of the item set
// item contains a list of GeoPoints
for (GeoPoint item : items) {
int lat = item.getLatitudeE6();
int lon = item.getLongitudeE6();
maxLatitude = Math.max(lat, maxLatitude);
minLatitude = Math.min(lat, minLatitude);
maxLongitude = Math.max(lon, maxLongitude);
minLongitude = Math.min(lon, minLongitude);
}
objMapController.zoomToSpan(
Math.abs(maxLatitude - minLatitude),
Math.abs(maxLongitude - minLongitude));
これは時々動作します。ただし、一部のポイントが表示されない場合があり、それらのポイントを表示するにはズームアウトする必要があります。この問題を解決する方法はありますか?