Я хочу использовать два фрагмента карты, каждый из которых имеет отдельный фрагмент, бок о бок в действии. Левая карта будет отображать обзор по определенной области, правый - в конкретную точку.Используйте два osmdroid Map Views в одном виде
Проблема у меня в том, что только первая (слева) фрагмент карты быть правильно показано, второй (справа) один показывает карту мира:
Zooming не работает на праве карта.
Вот часть кода я использую:
private void initializeMap()
{
MapTileProviderBasic tileProviderOSM = new MapTileProviderBasic(getApplicationContext());
ITileSource tileSourceOSM = new XYTileSource("OpenFireMap", null, 1, 18, 256, ".png", new String[]{"http://openfiremap.org/hytiles/"});
tileProviderOSM.setTileSource(tileSourceOSM);
TilesOverlay tilesOverlayOSM = new TilesOverlay(tileProviderOSM, this.getBaseContext());
tilesOverlayOSM.setLoadingBackgroundColor(Color.TRANSPARENT);
OsmFragment frag = (OsmFragment) getFragmentManager().findFragmentById(R.id.osmMap);
osmMap = frag.getMap();
osmMap.setMultiTouchControls(true);
osmMap.getOverlays().add(tilesOverlayOSM);
MapTileProviderBasic tileProviderOSMDetail = new MapTileProviderBasic(getApplicationContext());
ITileSource tileSourceOSMDetail = new XYTileSource("OpenFireMap", null, 1, 18, 256, ".png", new String[]{"http://openfiremap.org/hytiles/"});
tileProviderOSMDetail.setTileSource(tileSourceOSMDetail);
TilesOverlay tilesOverlayOSMDetail = new TilesOverlay(tileProviderOSMDetail, this.getBaseContext());
tilesOverlayOSMDetail.setLoadingBackgroundColor(Color.TRANSPARENT);
OsmFragment fragDetail = (OsmFragment) getFragmentManager().findFragmentById(R.id.osmMapDetail);
osmMapDetail = fragDetail.getMap();
osmMapDetail.setMultiTouchControls(true);
osmMapDetail.getOverlays().add(tilesOverlayOSMDetail);
}
Если изменить либо один из фрагментов к фрагменту GoogleMaps, то osmdroid карта загружает правильно.
Любые идеи, почему это происходит и как я могу это исправить? Я использую новейшую версию osmdroid от gradle (v5.6.4)
Заранее спасибо.
EDIT: Я изменил смену переменной, но она по-прежнему не работает.
Спасибо за ваш ответ. Я изменил код, чтобы использовать разные TilesOverlays, но ничего не изменил. Затем я изменил каждую переменную на разные объявления для обеих карт, и это тоже не помогло. Любые другие предложения? –