1

需要添加大约 400 个图像(标记)来映射。图像是可绘制的,而不是位图图片。这是正确的方法吗?

GeoJsonSource source;
mapboxMap.addSource(source);

for(Item item : items){

        Bitmap bitmap;
        SymbolLayer markerLayer = new SymbolLayer("layerA", sourceId);

        markerLayer.withProperties(PropertyFactory.iconImage(imageId));
        markerLayer.setFilter(
                all(
                        eq("id", item.getId()),
                        eq("coordinates", item.getLatLng())
                )
        );

        mapboxMap.addLayer(markerLayer, layerId);
        mapboxMap.addImage(imageId, bitmap);

}

使用这种方法,地图变得无响应,fps 显着下降。可能这只是地图引擎的限制。

4

1 回答 1

0

创建一个可绘制图像的数组,将所有图像存储在 .

喜欢

int[] images = new int[] {};//store all images {in here}

然后按他们的位置使用地图图标..或者创建一个for循环

喜欢

for (int i = 0;i<images.lenght;i++){
//apply your code here and set the images
mapboxMap.addImage(imageId, bitmap.get[i]);
}

可能会帮助你..

于 2017-02-27T11:18:34.237 回答