2014-09-04 61 views
0

我正在开发一个带有mapquest的android导航应用程序。代表我在地图上的位置的标记最终在我移动时离开地图。有没有办法在我移动时使地图跟随我的位置?mapquest地图不遵循用户位置

我在onLocationChanged()里面试过“map.getController()。animateTo(myLocationOverlay.getMyLocation())”。但地图开始抽搐每一个瞬间

感谢 戈库尔

回答

0

如果你告诉地图每次你得到一个位置更新时间以动画,它通常始于新的动画,而旧的还在打。这可能是你看到的抽搐行为的原因。您可以直接移动到新的位置,而不是动画。缺点是地图不能平滑地滚动到新的位置,它会立即到达那里。你可以用

// replace LAT and LNG with the lat and lng values from your current location 
map.getController().setCenter(new GeoPoint(LAT, LNG)); 
+0

,但我希望有一个光滑的或类似的东西穿越当我移动。我把我的setclickable设置为false – user3763570 2014-09-06 14:03:20

+0

这是一个相当难解决的问题。没有可靠的方法可以知道下一次位置更新之前多久,这意味着没有什么好方法可以告诉代码动画应该保持多久。我认为SDK没有提供足够的细节来解决这个问题,而无需实现自己的地图移动版本。可能的解决方案可能包括排队动画(所以下一个动画不会开始,直到前一个动画完成)或取消任何正在进行的动画。 – 2014-09-07 00:12:56

0

的MyLocationOverlay有一个API调用此实现这一点:

mMyLocationOverlay.setFollowing(true);