Держите местоположение по центру, при изменении заполнения Google Maps в Android



Предположим, что в центре карты находится Эйфелева башня, когда я изменяю нижнее отступление на половину высоты экрана, Эйфелева башня остается на своем месте. Я хочу переместить Эйфелеву башню в середину верхней половины экрана. Кто-нибудь может мне помочь?

519   1  

1 ответ:

Основываясь на этой документации , Вы можете добавить отступы по краям карты, используя GoogleMap.setPadding() метод. Карта будет продолжать заполнять весь контейнер, но текст и управление позиционированием, жесты карты и движения камеры будут вести себя так, как если бы она была помещена в меньшее пространство.

Вот мой пример кода:

@Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;

       mMap.setPadding(0,0,0,1000);

        LatLng eiffel = new LatLng(48.858093, 2.294694);
        mMap.moveCamera(CameraUpdateFactory.newLatLng(eiffel));
        mMap.addMarker(new MarkerOptions().position(eiffel).title("Marker in Eiffel"));
    }

Вот скриншот:

Без заполнения:

Без прокладки

С помощью заполнение:

С прокладкой

Как вы можете видеть, я установил прокладку внизу, а логотип Google находится в середине экрана, что доказывает, что прокладка работает. Маркер также находится в середине верхнего экрана.

Вы также можете проверить на этом видео-учебник способ, как использовать заполнение карты с Google Maps Android API.

Надеюсь, это поможет! :)

Comments

    Ничего не найдено.