Я реализую карту, используя мой собственный источник листов, но проблема в том, что он перекрывается картами изображений с собственным источником листов.
Вот мой код для реализации карты смой собственный источник плиток.
class OurTileSource(url: String) : XYTileSource("plan", 1,
20, 128, ".png", arrayOf(url.substring(0, url.indexOfFirst { it == '{' }))) {
override fun getTileURLString(pMapTileIndex: Long): String {
val url2 =(baseUrl +"/" +MapTileIndex.getZoom(pMapTileIndex) +
"/"
+ MapTileIndex.getX(pMapTileIndex) + "_"
+ MapTileIndex.getY(pMapTileIndex) + mImageFilenameEnding)
return url2
}
}
Код для настройки карты
if (device.tileTemplate != null) {
mapView.setTileSource(OurTileSource(device.tileTemplate!!))
btnMap.visibility = View.GONE
} else {
mapView.setTileSource(TileSourceFactory.MAPNIK)
btnMap.visibility = View.VISIBLE
}
val zoom = if (device.tileTemplate != null) 3.0 else 8.0
mapView.setMultiTouchControls(false)
mapView.setBuiltInZoomControls(false)
mapView.setScrollableAreaLimitDouble(mapView.boundingBox)
mapView.controller.setCenter(GeoPoint(device.lat, device.lon))
mapView.controller.setZoom(zoom)
mapView.invalidate()