改善慢速加载图像层的性能

时间:2018-12-29 01:59:07

标签: ios swift mapbox

因此,我目前正在使用 AlamoFire 向提供图像叠加层的地图服务发出请求。据我了解,所有 AlamoFire的请求都是异步发出的。

现在我牢记这一点,我想到我将从服务器获取数据,然后在调用主线程时添加图像层。我已完成以下操作:

networkManager.fetchParcelOvelays(parameters: params) { image in   

        let source = MGLImageSource(identifier: "parcels", coordinateQuad: self.getBoundingBox(), image: image)            
        style.addSource(source)

        let parcelLayer = MGLRasterStyleLayer(identifier: "parcel-layer", source: source)            
        DispatchQueue.main.async {
            for layer in style.layers.reversed() {
                if !layer.isKind(of: MGLSymbolStyleLayer.self) {
                    style.insertLayer(parcelLayer, above: layer)
                    break
            }
        }
    }
}

即使在调用主线程并显示了图层之后,它的加载似乎仍然很慢。我没有正确调用主线程吗?

0 个答案:

没有答案