我正在尝试在Bing 地图Pushpin
上显示多个对象。EntityLayer
在Pushpins
正确检索数据并且正确EntityLayer
存储Pushpins
时,MapView
不显示EntityLayer
.
JSONObject json = retrieveJSON();
JSONArray array = json.getJSONArray("Sites");
Coordinate closestGauge;
fooLayer = new EntityLayer("foos");
for(int i = 0; i < array.length(); i++)
{
JSONObject site = array.getJSONObject(i);
double lon = site.getDouble("Longitude");
double lat = site.getDouble("Latitude");
Pushpin foo = null;
fooCoordinate = new Coordinate(lat, lon);
PushpinOptions fooData = new PushpinOptions();
fooData.Text = Double.toString(site.getDouble("Data"));
fooData.Icon = Constants.PushpinIcons.RedFlag;
foo = new Pushpin(fooCoordinate, fooData);
_FWSGPSLayer.add(foo);
}
fooMap.getLayerManager().addLayer(fooLayer);
fooLayer.updateLayer();
从 Debug 的角度来看,我注意到EntityLayer
never 链接到 ,MapView
因为它的_map
参数/值总是设置为null
. 我尝试了各种显示图层的方法,例如调用setBingMapsView
方法 fromEntityLayer
但到目前为止没有任何效果。
有什么我做错了吗?我试图将事情与示例 Bing 地图应用程序相匹配,但它没有帮助。
编辑:我已经进行了一些调试,这就是我到目前为止所发现的:当我注释掉 for 循环并简单地添加一个图钉时,它就可以工作了。这让我相信必应地图对可以添加的图钉数量有限制。然而,我的数组只包含约 200 个数据点,而我被引导相信上限是数千个。