118

新しい Google Maps API v2 で myLocation のズーム レベルを変更することはできますか?

を設定GoogleMap.setEnableMyLocation(true);すると、地図上に現在地を見つけるためのボタンが表示されます。

それをクリックすると、マップがあなたの場所に移動し、ある程度ズームインします。このズームを小さくしたり大きくしたりできますか?

4

13 に答える 13

233

デフォルトの myLocation Marker をクリックして変更できるかどうかは疑わしいです。ただし、場所が見つかったらアプリに自動的にズームインさせたい場合は、この質問に対する私の回答を確認してください。

私が提供した回答はズームインしていないことに注意してください。ただし、onLocationChanged メソッドを以下のように変更すると、好きなズーム レベルを選択できます。

@Override
public void onLocationChanged(Location location) {
    if( mListener != null ) {
        mListener.onLocationChanged( location );

        //Move the camera to the user's location and zoom in!
        mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(location.getLatitude(), location.getLongitude()), 12.0f));
    }
}
于 2012-12-18T15:43:03.537 に答える
163

以下も使用できます。

mMap.animateCamera( CameraUpdateFactory.zoomTo( 17.0f ) );    

ズーム値を最小値 = 2.0 と最大値 = 21.0 の間の任意の値に変更するだけです。

API は、すべての場所に最大ズームまたはそれに近い値のタイルがあるわけではないことを警告します。

で使用できるズーム方法の詳細については、これを参照してくださいCameraUpdateFactory

于 2013-03-19T16:45:48.380 に答える
28

位置情報付き - 新しい GoogleMaps SDK:

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(chLocation,14));
于 2015-10-13T10:14:57.887 に答える
15

ズームを現在のズームレベルに対して相対的に変更するHeatfanJohnのソリューションとは少し異なります。

// Zoom out just a little
map.animateCamera(CameraUpdateFactory.zoomTo(map.getCameraPosition().zoom - 0.5f));
于 2015-06-30T16:22:59.190 に答える
1

「mMap.animateCamera( CameraUpdateFactory.zoomTo( 17.0f ) );」でやってみました しかし、それは私にはうまくいきませんでした。そこで、このアニメーションを使用して開始時にズームインしました。

LatLng loc = new LatLng(33.8688, 151.2093);
mMap.addMarker(new MarkerOptions().position(loc).title("Sydney"));
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(loc, 18), 5000, null);
于 2020-05-04T20:25:52.247 に答える
1

私も最近同じクエリを持っていました....上記の setmaxzoom または map:cameraZoom="13" のいずれも機能しませんでした。使用した依存関係が古いことがわかりました。Google マップの依存関係を確認してください。正解です これが最新の使い方です

compile 'com.google.android.gms:play-services:11.8.0' 
于 2018-03-07T12:51:43.903 に答える