4

私のAndroidアプリには、次のコードがあります...

CameraUpdate center= CameraUpdateFactory.newLatLng(new LatLng(Lat,Lon));
DebugLog.debugLog("centered camera on " + Lat + " and " + Lon, false);
    CameraUpdate zoom=CameraUpdateFactory.zoomTo(15);
map.moveCamera(center);
    map.animateCamera(zoom);
map.addMarker(new MarkerOptions()
        .position(new LatLng(Lat, Lon))
        .title("Phone Location")
            );

緯度は 31.7898 経度は -111.0354

マーカーは正確に適切な位置にあります。ただし、カメラの中心は、v2 マップ上のその場所の北約 5 マイルです。なんで?ありがとうゲイリー

4

2 に答える 2

3

視点を同じに保ちますが、現在クリックされているマーカーにカメラの中心を合わせます。

    obj_map.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
    @Override
    public boolean onMarkerClick(Marker arg0) {
        CameraPosition obj_cam = new CameraPosition.Builder()
                .target(new LatLng(arg0.getPosition().latitude, arg0.getPosition().longitude))
                .zoom(obj_map.getCameraPosition().zoom)
                .tilt(obj_map.getCameraPosition().tilt)
                .bearing(obj_map.getCameraPosition().bearing)
                .build();
        obj_map.animateCamera(CameraUpdateFactory.newCameraPosition(obj_cam));
        return true;
    }
于 2014-02-06T07:20:42.540 に答える