如何让标记在特定边界内拖动而不在其外?请帮助我,我非常感谢任何帮助。谢谢你。
答案 0 :(得分:2)
每次拖动Marker时都使用OnMarkerDragListener
来获取事件。
假设您的边界在LatLong
对象或Circle
对象中有.radius(boundRadius)
,onMarkerDrag (Marker marker)
方法内使用marker.getPosition()
获取当前位置。很少有人会测试标记是否在你想要的边界内就可以了。一旦离开边界,使用marker.setDraggable(false);
使标记不可拖动。确保在调用true
或其他任何地方时重置为onMarkerDragEnd (Marker marker)
。
使用Circle.getCenter()
和半径中心的简单添加和划分,您可以快速找到西南和东北坐标,并制作LatLongBounds
对象,您可以使用该对象找到用户所在的位置是使用latLongBounder.contains(userLocation)
希望这会给你一些想法。我希望我有更多的时间给你实际的代码,但我认为这就足够了。