как получить статус загрузки карты в Android?

пока карта находится в состоянии загрузки, я хочу поместить индикатор выполнения в центр карты.

как получить прогресс?? и как сделать??

приведи пример..

Благодарю.


person Praveen    schedule 18.02.2010    source источник


Ответы (2)


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

MapView имеет метод canCoverCenter(), который может сообщить вам, доступна ли центральная плитка, но для остальных плиток ничего нет.

person Heikki Toivonen    schedule 19.02.2010
comment
Благодарю. у вас прямо на картах Google по умолчанию, индикатора прогресса нет. - person Praveen; 19.02.2010

Взгляните на GoogleMap.OnMapLoadedCallback.

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

Пример использования:

/**
 * Acquire a non-null instance of the GoogleMap.
 */
mMapView.getMapAsync(new OnMapReadyCallback() {
    @Override
    public void onMapReady(GoogleMap googleMap) {
        googleMap.setOnMapLoadedCallback(new OnMapLoadedCallback() {
            /**
             * Called when the map has finished rendering.
             * This will only be called once.
             * You must request another callback if you want to be notified again.
             */
            @Override
            public void onMapLoaded() {
                //TODO: Hide ProgressBar
            }
        });
    }
});
person Markus Rubey    schedule 25.10.2015