пока карта находится в состоянии загрузки, я хочу поместить индикатор выполнения в центр карты.
как получить прогресс?? и как сделать??
приведи пример..
Благодарю.
пока карта находится в состоянии загрузки, я хочу поместить индикатор выполнения в центр карты.
как получить прогресс?? и как сделать??
приведи пример..
Благодарю.
Я не думаю, что есть какой-то разумный способ сделать это. Обратите внимание, что Google не делает этого и в своих картографических приложениях. Довольно ясно, просто взглянув на страницу, чтобы увидеть, загружаются ли плитки, поэтому я не думаю, что на самом деле есть необходимость вставлять индикатор прогресса.
MapView имеет метод canCoverCenter()
, который может сообщить вам, доступна ли центральная плитка, но для остальных плиток ничего нет.
Взгляните на 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
}
});
}
});