如何制作GMSURLTileLayer动画

问题描述 投票:0回答:1

我有最后10个epochs次的数组。我想用这些epochs >>。创建动画GMSURLTileLayer。

我尝试与for循环集成,但无法正常工作。

这是我的代码:

let epochs = [10, 20, 30, 40, 50]

private func configureRadarForGoogle(epoch: Int) {
    UIView.animate(withDuration: 1.0) {
        let url: GMSTileURLConstructor = {(x, y, zoom) in
            let urltemplate = "https://tilecache.rainviewer.com/v2/radar/\(epoch)/512/\(zoom)/\(x)/\(y)/2/1_1.png"
            return URL(string: urltemplate)
        }
        let layer = GMSURLTileLayer(urlConstructor: url)
        layer.zIndex = 5
        layer.map = self.mapView
    }
}

private func startAnimation() {
    for epoch in self.epochs {
        sleep(1)
        configureRadarForGoogle(epoch: epoch)
    }
}

有人知道更好的解决方案吗?非常感谢。

我有最近10个时间的数组。我想用这些时期创建动画GMSURLTileLayer。我试图与for循环集成,但无法正常工作。这是我的代码:让时代...

ios swift google-maps core-animation
1个回答
0
投票

我认为您可以使用GMSMarkerLayer,它是GMSOverlayLayer的子类,可以在每个标记的基础上使用,该动画允许对其GMSMarker的多个属性进行动画处理>

现在进行动画处理,您可以计算点并将它们添加到2个单独的数组中,一个用于纬度值(y),一个用于经度(x),然后使用CAKeyFrameAnimation中的values属性进行动画处理,如here所述>

© www.soinside.com 2019 - 2024. All rights reserved.