1
我试图执行动画来模拟地图上的路线,我必须显示带标记的路径,逐个放置,等待X时间放入下一个。首先,我使用线程等待放置下一个标记,但它不会在任何设备上运行,并在运行时在地图上发生中断,因此会导致用户体验如此糟糕。然后,我决定使用animateCamera (Android API reference here)的回调功能来避免中断,但我无法找到某种方式相互制作动画,标记和位置的数量未确定,因此我必须重复。这是一些最后的想法代码:通过放置标记来动画路径的方法
hashMarkers.get("Initial").setVisible(true);
mMap.animateCamera(CameraUpdateFactory.zoomTo(16), 5000, new GoogleMap.CancelableCallback() {
@Override
public void onFinish() {
for (COUNT=1; COUNT < hashMarkers.size() - 1;){
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(hashMarkers.get(String.valueOf(COUNT)).getPosition()) // Sets the center of the map to
.zoom(16) // Sets the zoom
.bearing(-bearing) // Sets the orientation of the camera to east
.tilt(90) // Sets the tilt of the camera to 30 degrees
.build(); // Creates a CameraPosition from the builder
hashMarkers.get(String.valueOf(COUNT)).setVisible(true);
mMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition), 3000, new GoogleMap.CancelableCallback() {
@Override
public void onFinish() {
COUNT++;
}
@Override
public void onCancel() {
}
});
此代码只显示初始标记和散列表中的第一个标记。
非常感谢您的任何贡献,可能有助于解决此问题!