How to reposition built-in zoom controls in MapView?

这一生的挚爱 提交于 2019-12-02 17:42:10
ludwigm

I have an answer to this. I managed to reposition it with this code in the bottom left corner instead of in the middle

FrameLayout.LayoutParams zoomParams = new FrameLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
ZoomControls controls = (ZoomControls) getZoomButtonsController().getZoomControls();
controls.setGravity(Gravity.LEFT);
controls.setLayoutParams(zoomParams);

This thing does not work unless you sequence your calls correctly. This worked for me.

    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);

Upvote for @ludwigm, the only answer that worked for me. Thanks.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!