1

我正在使用 Azure Maps Android SDK 在地图上绘制图标。我目前这样做的方式是为每个元素添加一个新的数据源,并使用这个数据源和一个可绘制的图标添加一个新的 SymbolLayer。每次图标的位置发生变化时,我都会删除此 SymbolLayer 并添加一个带有更新数据源的新符号层。每次更新位置时,图标都会闪烁一秒钟,我希望有一种更流畅的方式。虽然这可行,但我想知道这是否真的是处理位置更新的预期方式?

4

2 回答 2

1

您可以通过更新 DataSource 本身来实现符号的平滑动画移动。

对 DataSource 的更改将通过现有图层立即反映在地图上。

dataSource.clear();
dataSource.add(featureCollection);
于 2019-09-03T20:41:07.297 回答
0

是的,这是可以做到的。关键是pin.setCoordinates()通话。

此处的示例代码... https://github.com/Azure-Samples/AzureMapsCodeSamples/blob/master/AzureMapsCodeSamples/Animations/Simple%20Symbol%20Animation.html

还有一个演示...... https://azuremapscodesamples.azurewebsites.net/Animations/Simple%20Symbol%20Animation.html

这些示例是在 JS 中,但我想 Android SDK 具有相同的 SDK。

于 2019-08-14T20:59:21.050 回答