1

最大ズームレベルでGoogleマップに現在の場所とターゲットの場所を表示する必要があります。最大ズームで両方の場所を表示するコードを次に示します。しかし、両方の場所の中心にズームすると、私の場所が見えなくなります。両方の場所がビューの境界内にあり、ズームを可能な限り最大に設定する必要があります。私を助けてください。前もって感謝します。

    mapView = (MapView) findViewById(R.id.mapview);
    mapView.setBuiltInZoomControls(true);
    mapMarker = getResources().getDrawable(R.drawable.map_marker);  

    overlayList = mapView.getOverlays();
    myMap = new MyLocationOverlay(this, mapView);
    myMap.enableMyLocation();   

    mapController = mapView.getController(); 

    GeoPoint geoPoint = new GeoPoint((int) (targetLatitude * 1E6), (int) (targetLongitude * 1E6));

    mapController.animateTo(new GeoPoint(((int) (targetLatitude * 1E6) + (int) (currentLatitude * 1E6))/2, ((int) (targetLongitude * 1E6) + (int) (curLongitude * 1E6))/2 )); 
    mapController.zoomToSpan((int)(targetLatitude - currentLatitude), (int)(targetLongitude - curLongitude));

    mapController.setZoom(12);

    OverlayItem overlayItem = new OverlayItem(geoPoint,"xxx", "yyyy");

    CustomPinpoint customPinpoint = new CustomPinpoint(mapMarker, this);
    customPinpoint.insertPinpoint(overlayItem);

    overlayList.clear();
    overlayList.add(myMap);
    overlayList.add(customPinpoint); 
4

2 に答える 2

0

ズーム レベルを下げて、マーカーを固定するジオポイントにアニメーション化します。

于 2012-10-23T07:34:02.483 に答える