gpt4 book ai didi

android - TileOverlay 问题

转载 作者:搜寻专家 更新时间:2023-11-01 08:04:17 25 4
gpt4 key购买 nike

因此,当我使用我的 MapBox map 时,图 block 覆盖在我的多段线和多边形上,因此看不到它们。

有什么办法可以修改这种行为吗?

这是我正在使用的代码:

public class MapBoxOnlineTileProvider extends UrlTileProvider {

private static final String[] FORMATS;

static {
final String[] servers = new String[] { "a", "b", "c", "d" };
final String[] formats = new String[servers.length];
for (int i = 0; i < servers.length; i++) {
formats[i] = String.format(
"%%s://%s.tiles.mapbox.com/v3/%%s/%%d/%%d/%%d.png",
servers[i]);
}
FORMATS = formats;
}

// ------------------------------------------------------------------------
// Instance Variables
// ------------------------------------------------------------------------

private String mMapIdentifier;
private boolean mUseSSL;

// ------------------------------------------------------------------------
// Constructors
// ------------------------------------------------------------------------

public MapBoxOnlineTileProvider(final String mapIdentifier) {
this(mapIdentifier, false);
}

public MapBoxOnlineTileProvider(final String mapIdentifier,
final boolean useSSL) {
super(256, 256);

this.mMapIdentifier = mapIdentifier;
this.mUseSSL = useSSL;
}

// ------------------------------------------------------------------------
// Public Methods
// ------------------------------------------------------------------------

public String getMapIdentifier() {
return this.mMapIdentifier;
}

public void setMapIdentifier(final String anIdentifier) {
this.mMapIdentifier = anIdentifier;
}

public boolean isSSLEnabled() {
return this.mUseSSL;
}

public void setSSLEnabled(final boolean enableSSL) {
this.mUseSSL = enableSSL;
}

@Override
public URL getTileUrl(final int x, final int y, final int z) {
final String f = FORMATS[new Random().nextInt(FORMATS.length)];
final String p = this.mUseSSL ? "https" : "http";
try {
System.out.println(String
.format(f, p, this.mMapIdentifier, z, x, y));
return new URL(String.format(f, p, this.mMapIdentifier, z, x, y));
} catch (final MalformedURLException e) {
e.printStackTrace();
return null;
}
}

}

设置叠加层:

final MapBoxOnlineTileProvider provider = new MapBoxOnlineTileProvider(MAP_ID);
final TileOverlayOptions overlay = new TileOverlayOptions().tileProvider(provider);
mMap.addTileOverlay(overlay);

最佳答案

您正在寻找TileOverlayOptions.zIndex .这也适用于其他可视对象(标记除外),并且可以在使用 TileOverlay.setZIndex 创建对象后进行修改。 .

关于android - TileOverlay 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16653674/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com