MapViewにズームコントロールを常に表示する方法はありますか?を使用してズームコントロールを追加しました
map=(MapView)findViewById(R.id.map);
map.setBuiltInZoomControls(true);
ただし、ズームコントロールはフェードインおよびフェードアウトします。常に見えるようにしたいと思います。
MapViewにズームコントロールを常に表示する方法はありますか?を使用してズームコントロールを追加しました
map=(MapView)findViewById(R.id.map);
map.setBuiltInZoomControls(true);
ただし、ズームコントロールはフェードインおよびフェードアウトします。常に見えるようにしたいと思います。
独自の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();
}
});
Intricationsのソリューションは機能しますが、ズームインまたはズームアウトしたときにボタンが無効になる組み込み機能が失われます。代わりに以下を使用することにより、この機能を保持できます。
localMapView.getZoomButtonsController().setAutoDismissed(false);
ただし、これでは、パネル内の任意の場所にコントロールを配置することはできません。また、コントロールは消えませんが、ユーザーが画面に1回触れるまで、最初は表示されません。コントローラを呼び出しsetVisible(true)
てみましたが、どういうわけかうまくいかないようです。