2015-02-27 2 views
1

я хочу построить карту для моего приложения с настраиваемыми плиткиAndroid Google Maps Api Tileprovider reapeating х

вот код моего провайдера плитки:

TileProvider tileProvider = new UrlTileProvider(256, 256) { 
     @Override 
     public synchronized URL getTileUrl(int x, int y, int zoom) { 

      Integer tileRange = 1 << zoom; 

      if (x < 0 || x >= tileRange) { 
       return null; 
      } 


      String s = String.format(Locale.US, MOON_MAP_URL_FORMAT, zoom, x, y); 
      URL url = null; 

      try { 
       url = new URL(s); 
      } catch (MalformedURLException e) { 
       throw new AssertionError(e); 
      } 



      return url; 
     } 
    }; 

    mMoonTiles = map.addTileOverlay(new TileOverlayOptions().tileProvider(tileProvider)); 

, но проблема в том, что, когда прокручивается справа карта повторяет фрагменты. Эта проблема не возникает при прокрутке сверху или снизу. Можно ли отключить это повторение для оси x?

Я уже опробовали

if (x < 0 || x >= tileRange) { 
        return null; 
} 

из апи документации Google Maps. Я знаю, что обычные карты google также повторяют ось x. http://i.stack.imgur.com/byva9.png

+0

Вы можете разместить снимок таким образом, мы можем увидеть, как это выглядит? –

+0

https://docs.google.com/file/d/0ByxUjhRGdx9jaEg1MWIyMHRmQlU/edit?usp=docslist_api здесь вы можете видеть, что карта reapeats всегда по оси x – Fabian

ответ

1

Попробуйте изменить if (x < 0 || x >= tileRange) { ...

в

if (x < 0 || x > tileRange - 1) { ... 
+0

, когда я меняю это, она никогда не звонит – Fabian

Смежные вопросы