我想使用自定义图块为我的应用构建地图
这是我的磁贴提供商的代码:
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 api文档。 我知道普通的谷歌地图也会重复x轴。 http://i.stack.imgur.com/byva9.png
答案 0 :(得分:1)
尝试更改if (x < 0 || x >= tileRange) { ...
到
if (x < 0 || x > tileRange - 1) { ...