【发布时间】:2010-10-27 16:17:21
【问题描述】:
我需要将 MapView 的内置缩放控件放置在与默认位置不同的位置。 虽然使用 getZoomControls() 方法很容易,但在最近的 API 版本中已弃用此方法。
有没有人知道如何在不调用 getZoomControls() 的情况下做到这一点?
【问题讨论】:
-
@Keyser 不,您的链接答案没有帮助。事实上
getZoomControls已弃用,因此这个问题非常有效。
我需要将 MapView 的内置缩放控件放置在与默认位置不同的位置。 虽然使用 getZoomControls() 方法很容易,但在最近的 API 版本中已弃用此方法。
有没有人知道如何在不调用 getZoomControls() 的情况下做到这一点?
【问题讨论】:
getZoomControls 已弃用,因此这个问题非常有效。
我有一个答案。我设法用左下角而不是中间的代码重新定位它
FrameLayout.LayoutParams zoomParams = new FrameLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
ZoomControls controls = (ZoomControls) getZoomButtonsController().getZoomControls();
controls.setGravity(Gravity.LEFT);
controls.setLayoutParams(zoomParams);
【讨论】:
除非您正确排序呼叫,否则此操作不起作用。这对我有用。
map.setBuiltInZoomControls(true);
FrameLayout.LayoutParams zoomParams = new FrameLayout.LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
ZoomControls controlls = (ZoomControls) map.getZoomButtonsController().getZoomControls();
controlls.setGravity(Gravity.TOP);
controlls.setLayoutParams(zoomParams);
map.displayZoomControls(true);
map.getController().setZoom(12);
支持@ludwigm,这是唯一对我有用的答案。谢谢。
【讨论】: