17

MapViewにズームコントロールを常に表示する方法はありますか?を使用してズームコントロールを追加しました

map=(MapView)findViewById(R.id.map);
map.setBuiltInZoomControls(true);

ただし、ズームコントロールはフェードインおよびフェードアウトします。常に見えるようにしたいと思います。

4

2 に答える 2

22

独自のZoomControlsをレイアウトxmlに配置することで、これを解決しました。

<ZoomControls android:id="@+id/zoomcontrols"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

次に、ズームを処理するためにonClickListenersを設定します。

    zoomControls = (ZoomControls) findViewById(R.id.zoomcontrols);
    zoomControls.setOnZoomInClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            mapController.zoomIn();
        }
    });
    zoomControls.setOnZoomOutClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            mapController.zoomOut();
        }
    });
于 2009-06-05T12:49:21.443 に答える
15

Intricationsのソリューションは機能しますが、ズームインまたはズームアウトしたときにボタンが無効になる組み込み機能が失われます。代わりに以下を使用することにより、この機能を保持できます。

localMapView.getZoomButtonsController().setAutoDismissed(false);

ただし、これでは、パネル内の任意の場所にコントロールを配置することはできません。また、コントロールは消えませんが、ユーザーが画面に1回触れるまで、最初は表示されません。コントローラを呼び出しsetVisible(true)てみましたが、どういうわけかうまくいかないようです。

于 2010-08-28T17:11:29.573 に答える