2016-06-16 2 views
1
googleMap.setMapType(GoogleMap.MAP_TYPE_NONE); 

Hier MAP_TYPE_NONE ist eine des Google-Standardkartentypen erhöhen können, wenn ich eine Karte Schicht wie das schaffen kann, würde es mir helfen, zu erhöhen die Zoomstufen.Wie eine benutzerdefinierte maplayer zu schaffen, in dem wir Zoomstufe mehr als 21

Da ich gehört habe, dass wir Zoomstufen erhöhen können, indem wir unsere eigene benutzerdefinierte Kartenebene erstellen, bitte helfen Sie beim Erstellen einer benutzerdefinierten Ebene mit maximalen Zoomstufen?

Antwort

1

Sie können jede benutzerdefinierte Kartenebene hinzufügen, die Sie möchten, die schönste ist, einen WMS-Dienst oder OSM-Karten hinzuzufügen.

WMS in Bezug auf, hier ist es meine Antwort zu einem anderen Thema: https://stackoverflow.com/a/33912249/4120431

für OSM, ich in der Regel mapquest verwenden (deren Pegel über 21 hat):

private static TileProvider mMapQuestTileProvider = null; 
public static TileProvider getMapQuestOSMBackGroundTileProvider() { 
     if (null == mMapQuestTileProvider) { 
      mMapQuestTileProvider = new UrlTileProvider(256, 256) { 

       @Override 
       public URL getTileUrl(int x, int y, int z) { 
        try { 
         String f = "http://otile1.mqcdn.com/tiles/1.0.0/osm/%d/%d/%d.png"; 
         return new URL(String.format(f, z, x, y)); 
        } catch (MalformedURLException e) { 
         return null; 
        } 
       } 
      }; 

     } 
     return mMapQuestTileProvider; 
    } 

------------ 
TileProvider tileProvider = getMapQuestOSMBackGroundTileProvider(); 
TileOverlay tileOverlay = myMap.addTileOverlay(new TileOverlayOptions() 
.tileProvider(tileProvider)); 

Hoffe, dass es

hilft PS: Du musst Google maps type auf NONE halten, um Level über 21 zu haben, ansonsten wirst du durch die niedrigste verfügbare Stufe limitiert (21 in gmaps maps)

Verwandte Themen