我的 MapView 包含由 addView() 和 LayoutParams 添加的子视图:
new MapView.LayoutParams(MapView.LayoutParams.WRAP_CONTENT, MapView.LayoutParams.WRAP_CONTENT, geoPoint, 0, 0, MapView.LayoutParams.BOTTOM | MapView.LayoutParams.LEFT)
我可以从屏幕上获得我的观点:
Point p1 = mapView.getProjection().toPixels(geoPoint, null);
当 geoPoint 更改时,我删除 mapView 的所有子项,然后使用新的 LayoutParams(基于新的 geoPoint)添加我的视图并在屏幕上获取新点:
Point p2 = mapView.getProjection().toPixels(newGeoPoint, null);
现在我需要将视图从 p1 转换为 p2,我尝试:
Animation animation = new TranslateAnimation(
Animation.ABSOLUTE, p1.x,
Animation.ABSOLUTE, p2.x,
Animation.ABSOLUTE, p1.y,
Animation.ABSOLUTE, p2.y);
animation.setDuration(1500);
myView.startAnimation(animation);
动画播放但从错误的点到错误的点。
如何制作从 p1 到 p2 的正确翻译动画。