0

すべてのPOIをマップに表示したい場合は、2つのパラメーターを動的に調整する必要があります。

  • センター-マップの焦点
  • ズームステップ

MapActivityにすでに組み込まれているそのような動作があるかどうか疑問に思っていますか?そうでない場合は、サンプルコードを教えていただけますか?

4

1 に答える 1

0

答えは、ポイントのグループの中から中心点を見つけてから、mapController.zoomToSpan(centrePoint)を呼び出すことではありません。代わりに、ItemizedOverlayで次のようにします。

public void calculateMapBounds()
{       
    int minLat = Integer.MAX_VALUE;
    int minLon = Integer.MAX_VALUE;
    int maxLat = Integer.MIN_VALUE;
    int maxLon = Integer.MIN_VALUE;

    for (LocatorPosition position : mPositions)
    {
        minLat = Math.min(position.getLatitudeE6(), minLat);
        minLon = Math.min(position.getLongitudeE6(), minLon); 
        maxLat = Math.max(position.getLatitudeE6(), maxLat); 
        maxLon = Math.max(position.getLongitudeE6(), maxLon);
    }

    spanLat = maxLat - minLat;
    spanLon = maxLon - minLon;

}

次に、mapController.zoomToSpan(spanLat、spanLon);を呼び出します。

于 2011-10-27T19:38:31.953 に答える