Как изменить положение встроенных элементов управления масштабированием в MapView? - PullRequest
13 голосов
/ 27 октября 2010

Мне нужно поместить встроенные элементы управления масштабированием MapView в положение, отличное от положения по умолчанию.Хотя это легко сделать с помощью метода getZoomControls (), этот метод устарел в последних версиях API.

Кто-нибудь знает, как это сделать без вызова getZoomControls ()?

Ответы [ 2 ]

10 голосов
/ 14 мая 2011

У меня есть ответ на это. Мне удалось изменить положение этого кода в левом нижнем углу, а не в середине

FrameLayout.LayoutParams zoomParams = new FrameLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
ZoomControls controls = (ZoomControls) getZoomButtonsController().getZoomControls();
controls.setGravity(Gravity.LEFT);
controls.setLayoutParams(zoomParams);
0 голосов
/ 14 августа 2013

Эта вещь не будет работать, если вы правильно не упорядочите свои вызовы.Это сработало для меня.

    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 для @ludwigm, единственный ответ, который работал для меня.Спасибо.

...